当我登录root
并输入一些随机的不存在的命令时,它说:
root@localhost:~# asdf
-bash: asdf: command not found
root@localhost:~#
但是当我和用户做同样的事情时,rakinar2
它说:
rakinar2@localhost:~$ asdf
bash: asdf: command not found
rakinar2@localhost:~$
现在 -bash 和 bash 之间有什么区别?
答案1
Bash 以破折号开头-
,作为命令名称的第一个字符(参数 #0)作为登录 shell 启动。 (给定-l
/开关的 shell 也是如此--login
。)这会影响它读取的启动文件。
看:6.1 调用 Bash和6.2 Bash 启动文件在手册中。