我想在启动时自动启动一个 shell 脚本,例如 LibreOffice。
问题是我不知道该怎么做。我应该在哪里构建触发器来启动脚本。
是否有一个文件夹/文件可以在其中构建触发器?
如果我不需要构建一个完整的“新”版本的 LibreOffice 来运行几行 shell 脚本,那就太好了。
答案1
这可能是做您想做的事情的最简单的方法。
#!/usr/bin/env bash
# Define the program to waitfor.
program_to_watch=soffice.bin
my_commands() {
echo "This is where your first command goes."
echo "This is where your second command goes."
}
clear
echo "waitfor program script"
echo "Author: Kris Beazley"
echo "Apache 2.0 License"
echo ""
echo "$(date): Waiting for $program_to_watch to start."
while true
do
sleep 1
if [[ $(ps -A | grep $program_to_watch) && -z $var ]]
then
var=true
echo "$(date): $program_to_watch started."
echo "$(date): Asking \"my_commands\" to start, and going back to sleep."
echo "$(date): $(my_commands)"
fi
if [[ ! $(ps -A | grep $program_to_watch) && -n $var ]]
then
unset var
echo "$(date): $program_to_watch closed."
echo "$(date): Going back to sleep."
fi
done
只需将其复制到文本文件并设置为可执行文件,但要确保行/usr/bin/env bash前面没有空行。
设置可执行文件类型:
chmod +x myscript.sh