我知道问题是如何创建的,但实际上并不知道如何恢复服务器命令的执行。
问题是,我在我的Ubuntu服务器中配置了Glassfish的环境变量,我从root修改了.bashrc
文件并添加了export
子句(带GLASSFISH_HOME
变量)和PATH
子句(指向$GLASSFISH_HOME/bin
)。
我关闭控制台并再次打开它以使更改生效,然后(BAM!)一旦我启动新的控制台会话,然后没有任何基本命令(dir
,find
, nano
,ifconfig
,任何内容)现在都可以使用,我只能使用cd
移动目录,我正在尝试再次编辑.bashrc
文件以撤消更改但是可以编辑它,没有编辑打开!在命令行中,我只获得-bash: dir: command not found
。
如果您有任何解决方案,请我知道这似乎微不足道,但我有点失明,无法查看或找到命令/应用程序所在的文件和文件夹。
答案 0 :(得分:12)
导出二进制路径:
export PATH=$PATH:/bin:/usr/bin
之后,您可以再次操作并撤消更改。
否则只需使用您喜欢的编辑器进行编辑,同时给出编辑器二进制文件的完整路径:
/usr/bin/emacs -nw /root/.bashrc
答案 1 :(得分:4)
您已覆盖了$PATH
,而不是附加到.bashrc
export PATH=$GLASSFISH_HOME/bin
或类似,但您需要将当前$PATH
附加到其末尾:
export PATH=$GLASSFISH_HOME/bin:$PATH
要在终端中对此进行修改,您必须将/usr/bin
附加到编辑器(例如/usr/bin/vim ~/.bashrc
),直到您更正问题为止。
答案 2 :(得分:0)
当您更改环境变量时,可能会删除您的路径;这样可以防止发现大多数命令。
幸运的是,您可以在指定命令时使用完整路径名来解决此问题。
vim不起作用?使用/ usr / bin / vim
ls不起作用?使用/ usr / bin / ls
您要使用的大多数命令都在/ usr / bin中;如果没有找到,你可以检查/ bin或/ usr / sbin
通过访问编辑器,您应该能够修复启动脚本以恢复路径。