gpt4 book ai didi

linux - awk输出不会打印到文件

转载 作者:太空宇宙 更新时间:2023-11-04 12:03:01 25 4
gpt4 key购买 nike

#!/usr/bin/env bash
for x in $(ls git-report/)
do
repo_name=${x/.txt/}
while IFS=' ' read -r col1 col2;
do
pushd "backend-projects/${repo_name}"
git diff --numstat ${col2}..master | awk 'NF==3 {plus+=$2} END {print plus}' | cat >> /tmp/repos/${repo_name}.txt
git diff --numstat ${col2}..master | awk 'NF==3 {minus+=$1} END {print minus}' | cat >> /tmp/repos/${repo_name}.txt
cat /tmp/repos/${repo_name}.txt >> /tmp/script
popd
echo "# ----------- "
done < "git-report/$x"
done

所以我有两个目录, git-report和单独的文本文件,其中包含每个存储库的所有未合并的分支名称。第二个 backend-projects包含所有存储库。
手动执行这些命令会写入文件,但在运行bash脚本时失败。我做错什么了?

最佳答案

对awk使用tee命令而不是cat
如:

git diff --numstat ${col2}..master | awk 'NF==3 {plus+=$2} END {print plus}' | tee /tmp/repos/${repo_name}.txt

希望这对你有帮助。

关于linux - awk输出不会打印到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51701496/

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