0
#!/bin/bash
#OLDIFS=$IFS
IFS=$'\r'
    fortune_lines=($(fortune | fold -w 90))

    #Screen_Session=$"{mainscreen}"
        Screen_Session=`screen -ls|grep "\."|grep "("|awk '{print $1}'`
    Screen_OneLiner=$(screen -p 0 -S ${Screen_Session} -X stuff "`printf "${fortune_lines[@]}\r"`")
#IFS=$OLDIFS;
    for var in "${Screen_OneLiner[@]}"
      do
         echo    "${var}"
    done

好的,这个脚本有效(排序)。我需要将字符串“say”放在整个数组索引的前面。目前我只能让它打印出“说”到第一行。

4

1 回答 1

0

我们不需要像数组这样的玩意儿使事情复杂化——我们可以让老好人来sed完成这项工作。

#!/bin/bash
fortune_lines=$(fortune | fold -w 90 | sed 's/^/say /')
Screen_Session=`screen -ls|grep "\."|grep "("|awk '{print $1}'`
screen -p 0 -S $Screen_Session -X stuff "$fortune_lines"
于 2013-09-06T13:27:23.653 回答