将文本附加到以字符串开头的所有文件

发布于 2024-09-04 15:01:01 字数 277 浏览 7 评论 0原文

如何将字符串附加到目录中以特定字符串开头的所有文件?

我尝试过,

cat mysig >> F*

但它没有将 mysig 的内容附加到以 F 开头的所有文件,而是创建了一个名为“F*”的文件。显然通配符似乎不起作用。 还有其他选择吗? 提前致谢。

编辑: 另外,如何安全地删除这个新创建的文件“F*”?使用

rm F*

会删除所有我不想要的以 F 开头的文件。

How do I append a string to all the files in a directory that starts with a particular string?

I tried,

cat mysig >> F*

But instead of appending contents of mysig to all files starting with F, it creates a file named "F*". Obviously wildcard doesn't seem to work.
Any alternatives?
Thanks in advance.

Edit:
Also how do I delete this newly created file "F*" safely?. Using

rm F*

would delete all the files starting with F which I wouldn't want.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

心凉怎暖 2024-09-11 15:01:02

shell 无法直接执行此操作,因为只有一个来自源程序(在本例中为猫)的流。

您需要一个帮助程序,例如 tee。试试这个:

$ cat mysig | tee -a F*

The shell can't do that directly, since there will only be a single stream coming from the source program (the cat, in this case).

You need a helper program, such as tee. Try this:

$ cat mysig | tee -a F*
裂开嘴轻声笑有多痛 2024-09-11 15:01:02
for f in F*
do
  echo "string" >> $f
done

* 是一个特殊字符 - 您需要引用它

rm 'F*'
for f in F*
do
  echo "string" >> $f
done

* is a special character - you need to quote it

rm 'F*'
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文