作业帮 > 综合 > 作业

> /dev/$(who |grep "$LOGNAME" |awk '{print $2}')

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/08 21:31:32
> /dev/$(who |grep "$LOGNAME" |awk '{print $2}')
解释一下这句话什么含义啊,>右边的,重定向到.
who命令的输出格式类似下面这样:# who
calabash tty7         2009-12-09 20:04 (:0)
calabash pts/0        2009-12-09 20:20 (:0.0)
calabash pts/1        2009-12-09 20:27 (:0.0)
$(who |grep "$LOGNAME" |awk '{print $2}')这句意思就是,先用grep过滤出登录用户的信息,然后用awk取得该行信息的第二个字段,即终端设备名称.pts是所谓的伪终端或虚拟终端,具体表现就是你打开一个终端,这个终端就叫pts/0,如果你再打开一个终端,这个新的终端就叫pts /1.Linux下一切皆文件,这些设备都是以设备文件的形式存在于/dev目录下.
所以,这句重定向也就是向登录用户的设备终端输出字符.