如何使用查找和回显来附加文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用查找和回显来附加文件相关的知识,希望对你有一定的参考价值。

嗨,到目前为止,这是我的文件系统,我想实现的是在名称中带有1的每个文本文件中附加“ Hello world”。

root @ s11:〜/ Test#ls -R

.:A B

./ A:A1 A2

./ B:B1 B2

到目前为止,我所做的是

root @ s11:〜/ Test#查找。 -iname“ * 1” -exec echo“ Hello World” >> {} ;

root @ s11:〜/ Test#查找。 -iname“ * 1” -exec文件{} ;

./ A / A1:空文件

./ B / B1:空文件

我的机器是Solaris 11.3

答案

为什么不那么容易。尝试以下方法:

find / -name '*1' | while read line; do
    echo "Hello World" >> $line
done

如果适合您,请投票

另一答案

您传递给-exec的是一个要执行的程序和各个参数。特别是,您不要传递shell命令。

但是,>>是一个shell构造,因此,如果要使用它,则需要运行一个shell:

find . -iname '*1*' -exec sh -c 'echo "Hello World" >> {}' ;

这里,传递给-exec的各个参数是sh-cecho "Hello World" >> {},允许您运行Shell命令。

还请注意,我做了-ianme '*1*',因为您的问题是“名称中有1”,而不是“以1结尾”。

以上是关于如何使用查找和回显来附加文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在屏幕方向更改时附加片段?

java 简单的代码片段,展示如何将javaagent附加到运行JVM进程

将片段附加到framelayout时如何删除空格

html 将以编程方式附加外部脚本文件的javascript代码片段,并按顺序排列。用于响应式网站,其中ma

android如何跨片段分离/附加保留视图状态

如何重新附加片段(片段未附加到活动 Kotlin)