gpt4 book ai didi

bash - while循环bash脚本

转载 作者:行者123 更新时间:2023-11-29 09:48:01 25 4
gpt4 key购买 nike

我有一个包含以下信息的文本文件:

/media/Arc/eo_archive_test/MODIS/L2_LAC_OC/A2006001071000.L2_LAC_OC.x.hdf:2006:365
/media/Arc/eo_archive_test/MODIS/L2_LAC_OC/A2006001084000.L2_LAC_OC.x.hdf:2013:011
/media/Arc/eo_archive_test/MODIS/L2_LAC_OC/A2006001084500.L2_LAC_OC.x.hdf:2005:365
....

我想回显 $f1,其中 $f2 是“2013”​​,$f3 是“011”。我正在使用以下脚本,但它全部回显。我在这里做错了什么?

file=/media/Arc/eo_archive_test/MODIS/input/all_file_list.txt
while IFS=: read -r f1 f2 f3
do
[ "$f2" = "2013" ] || [ "$f3" = "011" ]
echo $f1
done < "$file"

有什么办法吗?提前谢谢你

最佳答案

您需要将测试连接到操作

[[ $f2 == 2013 && $f3 == 011 ]] && echo $f1

if [ "$f2" = "2013" ] && [ "$f3" = "011" ]; then
echo $f1
fi

您现在所做的是执行测试命令并忽略退出状态。所以 echo 命令确实对每一行都执行。

关于bash - while循环bash脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22229306/

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