我正在编写一个 shell 脚本,它将在全新安装 ubuntu 18.04 后自动安装其他程序并恢复我的个人数据和程序数据。要恢复我的程序数据,我需要程序首次启动后创建的文件夹结构。作为示例,我将使用 Firefox,但我还需要它来处理例如 thunderbird 和其他一些程序。我知道您也可以使用 Firefox 帐户并让它恢复您的帐户,但这不是我需要的,因为我还有其他不允许这种恢复的程序。
首次安装 Firefox 的用户配置文件数据存储在 中/home/$USER/.mozilla/firefox/*.default-release
。我需要将我的配置文件数据备份复制到该文件夹中,然后 Firefox 才会使用我的配置文件数据启动。问题是*.default-release
事先不知道文件夹的确切名称。我认为它是某种随机生成的,例如我的配置文件文件夹名为11qpplpx.default-release
。因此,我不能在启动 Firefox 之前直接使用它mkdir /home/$USER/11qpplpx.default-release
来创建文件夹,因为文件夹的名称是随机的。
我现在尝试从命令行启动 Firefox 并立即停止它,以便创建文件夹结构,但 Firefox 再次关闭,以便其余的 shell 脚本可以运行以将文件复制到目录中。我的问题是,如何启动 Firefox 并立即再次停止它,但仍让它创建文件夹结构?我试过了firefox & pkill -f firefox
,但没有创建文件夹结构。
提前致谢!
答案1
我的问题是,如何启动 Firefox 并立即再次停止它,但仍让它创建文件夹结构?
在杀死它之前给它一些时间:
firefox &
sleep 5
pkill -f firefox
这将等待 5 秒钟,然后终止 Firefox。如果时间不够,请增加给定的时间sleep
。