我有一台带有数据文件夹和脚本的 linux 机器,该脚本在运行它的文件夹的不断变化的内容上生成报告 xlsx 电子表格文件。我使用 xlsx2tsv 脚本将其转换为 tsv 文本,耗时不到一秒。/search
该脚本需要大约 1 分钟来生成电子表格文件,我希望有一个终端屏幕在 GNU 较少的缓冲区中显示表的结果,我可以在其中使用光标移动,并使用等搜索内容内容的最新版本。
目前我有一个 bashwhile true; do
循环,它首先计算脚本的内容,然后将其转换为 tsv 并将其通过管道传输到GNU less
. 然后在另一个终端屏幕中,我有一个循环,每 2 分钟while true; do
杀死一次命令。less
但这让我有 1 分钟不活动,我正在等待电子表格更新,然后才能使用less
.
我想优化这个设置,以便在后台生成一个新的电子表格,而不是在我杀死 less 命令时,而是在 1 分钟前开始,这样更新的less
命令总是给我一个可以导航的工作副本。理想情况下,无需为其创建第三个终端窗口。
有任何想法吗?也许 GNU 并行?
当前设置:
# screen in the data folder with less command
while true; do $HOME/script -dir $PWD && xlsx2tsv $(ls $PWD/*.xlsx) 1 | column -t | less -S -N; sleep 0.5; done
# screen 2 with the less killing
while true; do pkill less; sleep 120; done