'chsh -s' 和 'export SHELL' 有什么区别?

'chsh -s' 和 'export SHELL' 有什么区别?

我认为该export命令仅在每次登录会话时有效,但我不确定。chsh我认为更持久。有人能帮我澄清一下吗(最好有链接/文档)?谢谢。

答案1

chsh如果您想要更改常用的 shell,通常可以使用它。它会进行更新,/etc/passwd以便每次将来登录时都会启动您新选择的 shell。

export SHELL它本身不做任何事情。SHELL变量有时会被想要生成外部 shell 的程序使用(例如,在某个目录中为您提供命令行,或预设某些环境变量)。如果您想临时运行另一个 shell,通常只需像运行任何其他程序一样直接运行它即可。例如,如果您的常规 shell 是,/bin/bash但您想在 下测试某些东西,那么只需在 bash 命令行上/bin/tcsh发出。/bin/tcsh

相关内容