这是我的问题:我有一个 shell 脚本,用于gitk --all .
以图形方式表示 git 存储库。我希望此脚本无人值守运行,而不是以 GUI 模式启动 gitk 并等待用户关闭它,我希望以某种方式:
- 启动
gitk
窗口 - 当实例化其 GUI/窗口时,自动截取其窗口的屏幕截图
- 截取屏幕截图后,关闭
gitk
我想,而不是打电话
gitk --all .
...在我的bash
脚本中,我会调用类似这样的伪代码:
my_scrshot_cmd --command "gitk --all ." --file myrandomfilename.png
这可以在 Linux 上实现吗?如果可以,我该怎么做?
答案1
你可以尝试做这样的事情
gitk --all . & # You run the gitk and go forward meanwhile
PidOfLastCommand=$! # You need to remember the PID after
sleep 30s # Change this value with the needed one...
import screenshot.png # From Imagemagick it saves the screenshot
kill $PidOfLastCommand # Let's we kill gitk
echo "### Just DONE ###"
笔记:
- 它需要安装 Imagemagick(
import
但你可以使用以下命令更改命令你喜欢的那个)。 - 您需要等待足够的时间
sleep
......做一些测试并采取舒适的值(您必须确保它完成了工作)