我有一个 shell 脚本,它向我编写的 python 程序发送大约 150 个文件。我不知道需要多长时间,所以我想知道是否有终端命令:
a) 告诉我当前正在处理哪个文件
b)还有多少文件要运行
这是我的外壳:
#!/bin/bash
ls fp00t*g*k2odfnew.dat | while read line; do
echo $line
python file_editor.py $line
done
我有一个 shell 脚本,它向我编写的 python 程序发送大约 150 个文件。我不知道需要多长时间,所以我想知道是否有终端命令:
a) 告诉我当前正在处理哪个文件
b)还有多少文件要运行
这是我的外壳:
#!/bin/bash
ls fp00t*g*k2odfnew.dat | while read line; do
echo $line
python file_editor.py $line
done
PipeViewer 可能会满足您的需求: http: //www.catonmat.net/blog/unix-utilities-pipe-viewer/
像这样的东西可能会起作用,将两者都ls
置于pv
行模式:
#!/bin/bash
ls -1 fp00t*g*k2odfnew.dat | pv -l | while read line; do
echo $line
python file_editor.py $line
done
您还可以提供总数,pv
以便它知道您计数了多少,因此进度条可以正常工作:
#!/bin/bash
ls -1 fp00t*g*k2odfnew.dat | pv -l -s`ls -1 fp00t*g*k2odfnew.dat | wc -l` | while read line; do
echo $line
python file_editor.py $line
done