我不确定是否有可能,但我想要做的是运行bash命令并将输出存储在变量中并显示它,就好像我一样正常启动命令。这里是我的代码:显示Bash命令的输出并将输出保留在变量中
VAR=`svn checkout $URL`
所以我要存储在VAR输出,仍然可以看到的结果(因为svn签需要很长的时间,我不能只是做后回声$ VAR ..)
感谢
我不确定是否有可能,但我想要做的是运行bash命令并将输出存储在变量中并显示它,就好像我一样正常启动命令。这里是我的代码:显示Bash命令的输出并将输出保留在变量中
VAR=`svn checkout $URL`
所以我要存储在VAR输出,仍然可以看到的结果(因为svn签需要很长的时间,我不能只是做后回声$ VAR ..)
感谢
如果命令是从终端上运行,你可以这样做:
VAR=$(svn checkout $URL | tee /dev/tty)
您不必调用外部tee
:
VAR=$(svn checkout $URL) && echo $VAR
甚至:
VAR=$(svn checkout $URL); echo $VAR
我认为这个想法是'svn'需要很长时间,而OP想要实时查看'svn'命令的输出,而不是在结束之后。他甚至在问题中这么说:-) – 2010-01-17 17:55:07
我想我需要在literacyoverflow上获得一些帮助! – 2010-01-17 21:39:36
尔加,打我给它按秒! – 2010-01-17 17:18:26
也许是因为我用'v = $(for i in $(seq 20); do echo $ i; sleep 0.2; done | tee/dev/tty)'测试了上述内容,并且您使用了'sleep 1'? :-) – 2010-01-17 17:20:09
完美,正是我所需要的。谢谢! – Selmak 2010-01-17 17:20:45