我无法使用ls,bash ..任何在更改路径后都很关键的常用命令。 我不确定它之前是什么(因为我也不能做vi命令)。 我跑了第一个命令,并意识到第一个命令有一个错字 - 不是PATH,但是我输入了PATh。 所以我马上跑了下一个:
export PATH="/usr/local/bin:$PATh"
export PATH="/usr/local/bin:$PATH"
然后vi,ls,bash命令开始无效。
我确实回显了$ PATH以查看PATH。
usr/local/bin:/usr/local/bin:/usr/local/bin:/usr/local/bin:
这就是我得到的。任何帮助表示赞赏。
答案 0 :(得分:1)
您应该能够var table = [
["name1", 1, 2],
["name2", 2, 3],
["name3", 3, 0],
["name4", 4, 1],
["name5", 5, 3]
];
function deepcheck(dad) {
for (var i = 0; i < table.length; i++) {
if (table[i][2] === dad) {
console.log('{' + table[i][1] + '}');
var h = table[i][1];
deepcheck(h);
}
}
}
for (var i = 0; i < table.length; i++) {
if (table[i][2] === 0) {
console.log('[{');
console.log(table[i][0] + ',' + table[i][1] + '[');
var t = table[i][1];
deepcheck(t);
}
}
重置PATH变量,尽管它可能会踩到您在此过程中配置的其他一些变量。您也可以从中设置适当的行以设置source /etc/profile
并重做当前环境中的
此外,您始终可以指定临时所需的可执行文件的完整路径。例如,如果您想将PATH
与当前状态的PATH一起使用,则可以使用grep
(或者/bin/grep
,具体取决于您的系统)
答案 1 :(得分:0)
1&gt;尝试加载默认的.profile脚本
{{1}}
2&gt;只需从当前会话退出 并重新登录。
答案 2 :(得分:0)
由于PATh
错误,您似乎已“破坏”了bash shell~ / .bash_profile脚本。 (问题明确指出bash
,所以我在这种情况下回答。)
由于PATH“已损坏”,您需要使用其完全限定的路径访问编辑器。
/usr/bin/vi ~/.bash_profile
这应该允许您将PATh
修改为PATH
。
如果您发现需要经常编辑PATH环境变量,那么这个小bash
函数可能会有所帮助。
vipath() {
local tmpfile=$(mktemp /tmp/vipath-edit.XXXXXX)
echo "$PATH" | tr ':' '\n' > "$tmpfile"
vi "$tmpfile" && PATH=$(paste -s -d ':' "$tmpfile")
rm "$tmpfile"
}
注意:有更好的方法可以确保删除我在此代码段中未使用的$ tmp文件。在多用户系统上,有更好的方法可以确保临时文件不在共享位置。
如果要在PATH中添加目录位置,而不添加重复的位置,这个小bash
函数可以帮助预先添加目录位置。
pathadd() {
if [ -d "$1" ] && [[ ! ":$PATH:" =~ ":$1:" ]]
then
PATH="$1:$PATH"
fi
}
答案 3 :(得分:0)
我在 RHEL8 中也有同样的情况,我为某个目录做了一个导出路径,然后没有命令再工作了。我可能执行了错误的export PATH 命令。
我收到了这样的消息:
>$ yum
bash: yum: command not found...
Install package 'yum' to provide command 'yum'? [N/y] n
幸运的是,我有其他一些类似的系统可以从中获取路径,所以我做到了:
export PATH=/home/USER/.local/bin:/home/USER/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbine
将 USER 更改为您自己的。
要使其永久化:添加到 $HOME/.bashrc 中:
export PATH=$PATH:<YOUR PATH HERE>
答案 4 :(得分:-2)
当您执行export PATH="/usr/local/bin:$PATH"
时,将PATH设置为/ usr / local / bin:加上之前PATH变量中的任何内容。这基本上将字符串“/ usr / local / bin:”与旧路径连接起来。这就是为什么你的PATH重复这么多,你必须运行该命令几次。
尝试运行此代码:export PATH="/usr/local/bin"
。