我在带有扩展名的目录中有一个文件列表.gz
,对于同一个列表,我需要通过使用grep
来final.log
获取相同的文件名,并且需要从目录中搜索整个文件列表,以便我可以准备一个命令使用。name.gz.DONE
grep
touch -d
.gz.DONE
例子:
VIC_sentine_1153690_20220503_153250_0000.psv.gz
VIC_sentine_1151176_20220504_153250_0000.psv.gz
VIC_sentine_175390_20220505_153250_0000.psv.gz
从.log
文件中。
当我grep
这样做时
a=VIC_sentine_1153690_20220503_153250_0000.psv.gz
cat ~/final.log | grep $a | grep DONE | cut -d '/' -f 7 | head -n 1
我明白了 VIC_sentine_1153690_20220503_153250_0000.psv.gz.20220523081154.DONE
通过使用文件,来自我手动生成的目录中的.DONE
相同时间戳.gz
touch -d "2022-05-03 21:04:00.000000000" VIC_sentine_1153690_20220503_153250_0000.psv.gz.20220523081154.DONE
但目录中有200个文件。
有没有办法交叉检查.gz
文件是否存在相同的文件(因为&.gz.*DONE
之间涉及一些数字)?.gz
.DONE
如果没有,则生成一个touch
命令并将该命令输出到某个.txt
文件。我所需要的只是touch
通过 grep 到日志文件来从该目录动态生成命令。