gpt4 book ai didi

bash - 如果在脚本中处理文件,如何保存文件名

转载 作者:行者123 更新时间:2023-11-29 09:39:51 24 4
gpt4 key购买 nike

我有 88 个文件夹,每个文件夹都包含文件“pair.'numbers'”。 (pair.3472、pair.7829 等)。我需要用 awk 处理文件以提取第二列,但我需要保存数字。如果我尝试:

#!/bin/bash
for i in {1..88}; do
awk '{print $2}' ~/Documents/attempt.$i/pair* > ~/Results/pred.pair*
done

它不保存数字,只给出一个文件:pred.pair*

感谢任何提示。

最佳答案

您不需要循环(参见 https://unix.stackexchange.com/questions/169716/why-is-using-a-shell-loop-to-process-text-considered-bad-practice 为什么这是一件好事):

awk '
FNR==1 { close(out); out=FILENAME; sub(/\/Documents.*\//,"/Results/pred.",out) }
{ print $2 > out }
' ~/Documents/attempt.{1..88}/pair*

关于bash - 如果在脚本中处理文件,如何保存文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35743960/

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