我正在尝试一个for循环输出到一个文件10次的文件。 这是我有什么:
for ((i=1;i<=10;i++)) ; do echo "Hello World" > testforloop.txt ; done
这将“Hello World”输出一次到文件“testforloop.txt”。 如果我不输出到文件,它会在屏幕上打印Hello World 10次。 谢谢你的帮助。
如何在git中删除合并分支的别名
杀死一个基于nice值的进程(bash)
在重新启动时运行.sh脚本并保持运行状态
我怎样才能知道在Linux中build立套接字连接(tcp或udp)多久?
Linux:安装后在我的/ bin /或/ usr / bin中找不到expect。 我如何find它?
您正在使用>重定向,在循环内部清除文件的现有内容并将其替换为命令的输出。 所以这次擦掉了以前的内容10次,每次换一行。
如果没有>或>/dev/tty ,它会进入你的显示器,在那里>不能清除任何东西,所以你看到所有的十个副本。
您可以使用>> ,这将仍然打开文件十次,但会追加(不擦除以前的内容)每次。 这不是非常有效,它保留了以前运行的数据(可能或不可能是你想要的)。
或者,您可以重定向整个循环一次:
for ... do cmd; done >file
它运行整个循环,输出重定向,创建(或者,与>> ,打开追加)只有一次。
你只是用“>”重定向回声,所以它会覆盖。 你需要用“>>”操作符来追加。 请执行下列操作:
for ((i=1;i<=10;i++)) ; do echo "Hello World" >> testforloop.txt ; done
你重写了十次testforloop.txt。 如果你做到了
for((i = 1; i <= 10; i ++)); 做回声“Hello World”> testforloop(i).txt; DONE
其中我是for循环的int。 我不确定你正在编程的语言。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。