File unix中目录中的唯一文件名
我在一个目录中有一个捕获文件,其中一些日志正在写入一个文件中File unix中目录中的唯一文件名,file,unix,directory,format,File,Unix,Directory,Format,我在一个目录中有一个捕获文件,其中一些日志正在写入一个文件中 word.cap 现在有一个脚本,当它的大小恰好变为1.6Gb时,它会清除自身并在同一目录中准备以下格式的文件- word.cap.COB2T_1389889231 word.cap.COB2T_1389958275 word.cap.COB2T_1390035286 word.cap.COB2T_1390132825 word.cap.COB2T_1390213719 现在我想一个接一个地选取脚本中的所有这些文件,并执行一些操作
word.cap
现在有一个脚本,当它的大小恰好变为1.6Gb时,它会清除自身并在同一目录中准备以下格式的文件-
word.cap.COB2T_1389889231
word.cap.COB2T_1389958275
word.cap.COB2T_1390035286
word.cap.COB2T_1390132825
word.cap.COB2T_1390213719
现在我想一个接一个地选取脚本中的所有这些文件,并执行一些操作。
我的剧本是-
today=`date +%d_%m_%y`
grep -E '^IPaddress|^Node' /var/rawcap/word.cap.COB2T* | awk '{print $3}' >> snmp$today.txt
sort -u snmp$today.txt > snmp_final_$today.txt
那么,我应该写些什么来逐个选择上述格式的所有文件名,因为我将把这个脚本放在crontab中,但我不想在编辑mainword.cap
文件时读取它。根据您的评论:
谢谢,这是工作,但我有一个小问题。有
一些BZIP文件,如word.cap.COB2T_1390213719.bz2,因此
不希望这些文件在列表中,那么应该怎么做
您可以在循环中添加一个条件:
for file in word.cap.COB2T*; do
if [[ "$file" != *.bz2 ]]; then
# Do something here
echo ${file};
fi
done
用于word.cap.COB2T*中的文件;执行echo${file};完成
?您好@devnull,谢谢,这是工作,但我有一个小问题。有一些文件是bzipped的,例如word.cap.COB2T_1390213719.bz2,所以我不希望列表中有这些文件,那么应该怎么做?