您可以lsof | grep /absolute/path/to/file.txt用来查看文件是否打开。如果文件已打开,此命令将返回状态0,否则将返回256(1)。
请注意,由于通常会随时打开许多文件,因此此命令将花费一秒钟。
lsof -c gedit例如,您还可以使用来查看已打开gedit的文件。将输出限制为一个进程将使执行时间减少到几乎没有。
这是要等待的脚本:
#!/bin/bash
while :
do
if ! [[ `lsof -c python3.2 | grep test.py` ]]
then
break
fi
sleep 0.5
done
echo "done"
在进程“ pyhton3.2”打开文件“ test.py”的同时运行。文件关闭后,它将继续执行“ echo done”并退出。
我在其中放置了“ sleep 0.5”,这样循环就不会严重占用CPU。否则,它将使用100%cpu。
奖金
似乎有一种简单的方法可以将odt转换为pdf:
感谢OOo论坛上的scls19fr提供了这个可爱的技巧。您可以使用以下命令从命令行将OpenOffice Writer文件转换为PDF:unoconv -f pdf
input.odt要获取unoconv,只需sudo apt-get install unoconv在终端上运行即可
。
(rhyshale.wordpress.com的rhyshale)