【发布时间】:2012-10-31 03:10:55
【问题描述】:
下面的代码没有像我预期的那样工作。我可能是因为我做错了,但我认为这可能是一个引用问题。
#!/bin/bash
IFS=$'\n'
fortune_lines=($(fortune | fold -w 30))
Screen_Session=$(mainscreen)
Screen_OneLiner=$(screen -p 0 -S ${Screen_Session} -X stuff "`printf "say ${fortune_lines[@]}\r"`")
for var in "${Screen_OneLiner[@]}"
do
echo "${var}"
done
我认为我没有正确引用某些内容,因为当我尝试执行此操作时。我明白了。。
line 5: mainscreen: command not found
[screen is terminating
基本上我正在尝试添加此功能(有效)
IFS=$'\n'
fortune_lines=($(fortune | fold -w 30))
到这个屏幕一个班轮
screen -p 0 -S ${Screen_Session} -X stuff "`printf "say ${fortune_lines[@]}\r"`"
然后让它循环数组
for var in "${ArrayName[@]}"
do
echo "${var}"
done
所以我不确定我(在代码中)我想要做的事情有多远。任何帮助都会很棒。
【问题讨论】:
-
我设法让它工作...gist.github.com/4006586
标签: arrays bash function loops gnu-screen