linux不小心修改了/etc/profile文件命令找不到

修改/etc/profile且执行了source /etc/profile然后所有命令都找不到了
-bash: ls:command is not found
打算再把文件恢复回去于是执行:
/bin/vim /etc/profilesource /etc/profile
但是报错了:
-bash: id:command is not found
因为source根本不是命令,
source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令。

功能:使Shell读入指定的Shell程序文件并依次执行文件中的所有语句
source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录
最后只有export将命令先添加到环境变量里面
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
这样就可以执行linux命令了
补充一下
source sh bash`命令的区别

source简称 点命令,可以简写成.,在当前shall内去读取不需要有执行权限,例如:
. a.sh
sh打开一个subshell里运行的脚本里设置变量,不会影响到父shell,也不需要执行权限,例如:
sh a.sh
./打开一个subshell里面运行设置的变量,需要执行的权限

你可能感兴趣的:(Linux)