在字符串循环的前面添加一个字符串?

时间:2012-11-01 05:19:45

标签: arrays string bash loops append

#!/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

确定这个脚本有效(sorta)。我需要在字符串“说”到整个数组索引的前面。目前我只能打印出“说”到第一行。

1 个答案:

答案 0 :(得分: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"