脚本完成百分比:使用百分比命名文件

时间:2012-09-29 00:45:23

标签: linux unix ksh percentage

我有一个脚本,我同时在2k服务器上运行,在NAS上创建临时工作目录。

该脚本构建文件列表......列表可以是1k文件或1m文件。 我在列表上运行for循环,在每个文件上运行一些grep命令

counter=0
num_files=`wc -l $filelist`
cat $filelist| while read line; do
do_stuff_here
counter=`expr $counter+ 1`
((percent=$counter/$num_files))
##CREATE a file named "$percent".percent
done

我在想的是我可以从列表中获取文件总数(wc -l $ filelist)并添加一个在循环中增加1的计数器。 然后我可以除$ counter / $ num_files。

这似乎有效,但我遇到的问题是我想重命名同一个文件,而不是每次只创建一个新文件。我能在这做什么?

我不希望这个输出到stdout / stderr ....我已经有足够的东西去这些地方了。我希望能够浏览WinSCP中的子目录并快速查看每个子目录。

1 个答案:

答案 0 :(得分:1)

试试这个

touch 0.percent 
counter=0 
num_files=$(wc -l $filelist)
num_files=${num_files/ */}
cat $filelist| while read line; do 
do_stuff_here 
mv -f {$((counter*100/num_files)),$((++counter*100/num_files))}.percent 
done 
rm -f *.percent