gpt4 book ai didi

linux - 如何在多个文件上使用 find 命令执行 awk 脚本

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:27:00 30 4
gpt4 key购买 nike

对于单个文件,此命令对我来说工作正常

awk -f test.awk template.yml file.yml > tmp && mv tmp file.yml

我已经找到我想要的所有文件的 fins 命令

find . -wholename "*vars/*.yml"

我不确定如何对所有文件执行上面的 awk 命令,以便将它们替换到位。我有旧版本的 awk 3.1

最佳答案

GNU awk 有就地修改选项,如果你有 GNU awk:

find . -wholename "*vars/*.yml" -exec awk -i inplace -f test.awk {} +

否则,您需要一次处理一个文件:

find . -wholename "*vars/*.yml" -exec \
bash -c 'awk -f test.awk "$1" >"$1".tmp && mv "$1".tmp "$1"' _ {} \;

关于linux - 如何在多个文件上使用 find 命令执行 awk 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39218597/

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