gpt4 book ai didi

linux - bash shell中 "{}"的作用是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:57:38 30 4
gpt4 key购买 nike

我正在阅读 xargs: How To Control and Use Command Line Arguments , 并找到以下示例:

{} as the argument list marker
......
$ find . -name "*.bak" -print0 | xargs -0 -I {} mv {} ~/old.files

我无法理解 bash shell{} 的确切含义和功能,谁能给出详细的解释?

最佳答案

{} 是 xargs 的关键字。您的 cmd 意味着找到所有 *.bak 文件。并将每个 .bak 文件名提供给xargs as {}(使用 -I {} 选项)。因此您可以在此处使用文件名作为参数。

例如。如果 find cmd 给你输出

1.bak
2.bak
3.bak

这里的每个文件名都以 {} 的形式提供给 xargs。所以 mv {} ~/old.files 将转化为

mv 1.bak ~/old.files
mv 2.bak ~/old.files
mv 3.bak ~/old.files

假设您要将每个 .bak 文件重命名为 .bak.2015-04-01。您必须在 mv cmd 中使用该文件名两次。

mv 1.bak 1.bak.2015-04-01

您可以通过使用

来实现这一点

找到 . -名称“*.bak”-print0 | xargs -0 -I {} mv {} {}.2015-04-01

关于linux - bash shell中 "{}"的作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29508239/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com