WHO命令返回的价值在一行(而不是多行)

时间:2015-07-02 09:39:56

标签: linux bash

这个问题以某种方式连接到我的previous一个

从shell输入的返回输出

[admin@DB01ATK ~]$ who
adm_drodmann pts/3        2015-07-01 08:57 (10.129.12.77)
adm_ssmith   pts/4        2015-07-01 02:11 (10.129.12.76)
adm_kholdman pts/2        2015-06-30 23:08 (10.129.12.45)

下面的代码似乎(种类)相同,但输出在一行中:

[admin@DB01ATK ~]$ who

adm_drodmann pts/3        2015-07-01 08:57 (10.129.12.77)
adm_ssmith   pts/4        2015-07-01 02:11 (10.129.12.76)
adm_kholdman pts/2        2015-06-30 23:08 (10.129.12.45)
[admin@DB01ATK ~]$  while  read CMD;
>      do
>        echo $(who)
>      done <<<$(who)
adm_drodmann pts/3 2015-07-01 08:57 (10.129.12.77) adm_ssmith   pts/4    2015-07-01 02:11 (10.129.12.76) adm_kholdman pts/2 2015-06-30 23:08 (10.129.12.45)

你会给我一个提示,告诉我如何将这个looong字符串分成行

1 个答案:

答案 0 :(得分:0)

您需要同时使用echo "$CMD" <<<"$(who)"

while read l; do echo "$l"; done <<< "$(who)"

- Andrea Corbellini