技术解析

如何判断终端类型是login还是non-login
0
2021-07-23 16:05:39
idczone
写了一个脚本,需要在里面判断,当前运行的终端是 login-shell 还是 non-login shell。
man了半天无头绪,求教!
non-login shell你指cronjob里面跑的那种么?
可以 [[ -t 0 ]] 判断stdin是否打开,没打开就是非交互shell。


看到你的回答我重翻了下abs,-t这个选项好冷门啊
cronjob属于哪种shell我一直不晓得,它不会读取任何配置文件。
non-login shell比较典型的代表就是
ssh host 'command'
衍生的scp
以及su username

额,我就man bash里面查的...
$ ssh [email&"[[ -t 0 ]] && echo stdin is a tty"
[email&password:
没返回,那看起来这样判断应该可以的。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服