我正在尝试使用start命令提示符中的命令打开文件和文件夹,但我无法打开名称中包含空格的文件和文件夹。
我尝试了以下查询(在 上测试C:\Program Files):
start C:\Program Files
start C:/Program\ Files
start C:/"Program Files"
start C:\"Program Files"
start "C:\Program Files"
start "C:/Program Files"
start C:/Program_Files
start C:/Program%20Files
Run Code Online (Sandbox Code Playgroud)
但它们都不起作用。
Amazon Linux 服务器,通过 SSH 连接:
我试图通过在 /etc/environment ( PATH=$PATH:/opt/openoffice4/program) 和 /etc/sysconfig/httpd (export PATH = ${PATH:$PATH:}/opt/openoffice4/program ) 中。
然后我重新启动。
现在,我什么也做不了,甚至ls -l导致-bash: ls: command not found
我该怎么做才能重新获得控制权?
在开发我的产品时,我的测试设备同时安装了多个版本的应用程序。但是,为了获得我的应用程序用于工作的绝对路径,我需要切换或重命名文件夹,以便我要测试的版本具有正确的路径,例如C:\Program Files\My Company\My App\My App.exe. 我已经创建了一个针对此路径的快捷方式,但是如果在当前没有任何版本具有该路径时打开此快捷方式,则该快捷方式将自动更新,认为文件已永久移动。这导致了无声的失败,直到我发现发生了什么。直到现在我才知道这是 Windows 快捷方式的功能。
所以我的问题很简单。有什么办法可以关闭这个功能吗?全局是好的,但每个快捷方式的解决方案会更好。
使用批处理文件而不是快捷方式是一种解决方案,但我想知道是否有任何方法可以在仍然使用快捷方式的同时使这项工作有效。
我正在使用 Windows 10 家庭版和 Windows 7 家庭版。
例如,我想将 notepad++ 添加到我的 PATH,但是该目录还包含uninstall.exe和其他几个文件/可执行文件,我不希望它们“污染”我的路径。我可以只添加一个notepad++.exe吗?
我在 Debian 中使用 fish 作为我的 shell,最近(经过一些升级后)每当我尝试使用命令完成时,我都有:
set: No such file or directory
set: Could not add component /usr/lib/x86_64-linux-gnu/libfm to PATH.
set: No such file or directory
Run Code Online (Sandbox Code Playgroud)
运行这个:
echo $PATH
Run Code Online (Sandbox Code Playgroud)
给我这个:
/usr/lib/x86_64-linux-gnu/libfm /usr/local/bin /usr/bin /bin /usr/local/games /usr/games
Run Code Online (Sandbox Code Playgroud)
在我的系统中没有/usr/lib/x86_64-linux-gnu/libfm,所以我明白为什么鱼在抱怨,但我找不到如何从我的$PATH变量中删除这条路径。
有谁知道我该怎么做?
如何更改符号链接指向的位置,而不删除并创建新的(使用ln -s "/path/to/point/to" "/path/where/symlink/is")?
当我尝试对 Java 的“当前”符号链接执行此操作时,Java 甚至无法工作(至少在命令行中说“分段错误”)但是当我使用 Time 恢复旧的“当前”符号链接时它恢复正常机器(但后来我发现/Applications/Utilities/Java Preferences.app无论如何我都应该使用它来更改当前的 Java 版本)。
从我的第一个 Windows 98(甚至现在在 Win7 上)开始,我可以输入文件夹名称的前 6 个字母(符号)并在~1其后添加(当当前目录中只有一个带有这六个字母的文件夹时),它会作为它的全名工作。而且看起来如果有多个文件夹的名字相同的六个第一个符号,我可以使用FOLDER~2等等,它会打开相应的文件夹,就像我输入了它的全名一样。喜欢c:\progra~1将打开C:\Program Files并将在win7 64位上c:\progra~2打开C:\Program Files (x86)。
这是如何运作的?
我弄乱了我的路径变量,现在我运行的一些应用程序引发了错误,说没有找到命令(错误 127),例如date和sleep。当直接在 shell 中执行时,这些命令工作正常。
我猜这与格式错误的 $PATH 变量有关,并且需要知道如何重置它。我已经删除了文件~/.bashrc、~/.bash_profile、/etc/bash.bashrc、~/.bashrc和~/.profile。
还有哪些文件可以保存我的$PATH?是否有一些更简单的方法来重置路径而不是挖掘可以保存我的路径的无数文件?
请注意,此路径问题仅与我的用户有关。我在我的系统上做了一个测试用户,路径很好,恢复正常。
更新:谢谢。我不知道我删除的哪个文件做了它,但事情又恢复了。你们做了“专家”做不到的事情。是的,克里斯,你是对的。我所做的 PATH 自定义在 bash_login 中。但不知何故,它在没有我删除这些自定义的情况下工作。我想可能是因为我使用了这个名为“RCEnvironment”的预制面板,并且我输入了一个带有引号和 :PATH 的路径。我不知道它是否需要引号,并且它不会替换 :$PATH,所以这可能是错误的根源。我忘了我什至有那个prefpane!
我知道如何设置系统或用户特定的环境变量:

现在,问题是PATH变量的处理方式是,您为用户 PATH 输入的值将自动附加到系统 PATH 中,这将是有效的 PATH 变量。
也就是说,说我有
(系统) PATH=C:\Windows\System32;C:\Program Files\Foo\bin;...
和 (USER) PATH=C:\Program Files\Bar\bin(注意%PATH%这个值中没有)
那么此用户的结果环境变量将是:
(有效的) PATH=C:\Windows\System32;C:\Program Files\Foo\bin;...;C:\Program Files\Bar\bin
但是,我希望对于非常特定的操作系统用户帐户,PATH 环境变量应该bar\bin在 PATH 的开头而不是结尾处包含目录。
有没有一种正确的方法可以告诉 WindowsPATH使用该用户的值完全覆盖用户的变量,而不是将其附加到系统PATH变量?
注意:显然,从批处理文件中,所有这些都无关紧要,因为您可以根据需要设置和调整 env.vars。
在 Windows 7 中,我的系统路径太长。我想对其进行编辑,以便删除一些不需要的路径。但是,当我单击高级系统设置时...
[窗口标题] %windir%\system32\systempropertiesadvanced.exe
[内容] Windows 找不到“%windir%\system32\systempropertiesadvanced.exe”。确保您输入的名称正确无误,然后重试。
[好的]
由于路径现在太长,我不能再编辑路径了....
还有其他方法可以编辑系统路径吗?
编辑
我在 regedit 中找到了它 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment\Path
现在我只需要知道一条健康的道路应该是什么样子......
path ×10
windows ×5
windows-7 ×3
macos ×2
amazon-ec2 ×1
command-line ×1
filenames ×1
fish ×1
linux ×1
osx-leopard ×1
shell ×1
shortcuts ×1
unix ×1
whitespace ×1
windows-10 ×1