我有几个encryption的驱动器,我启动后手动安装脚本。 其中一个驱动器托pipe我的保pipe箱文件夹。
在安装驱动器时,我需要检查dropbox是否正在运行,以便我可以停止dropbox,然后再次启动,以便正确同步。
这是我迄今为止,但我不能停止Dropbox,如果它已经运行。
#!/bash/rc if ~/dropbox.py running && [ $? -eq 1 ]; then ~/dropbox.py stop else ~/dropbox.py start fi
尝试
killall dropbox
这肯定会阻止它! 默认情况下发送SIGTERM,这是停止进程的正确方法。 如果你的系统支持多个用户同时登录,那么这个命令将会终止所有用户的dropbox,或者至少它会尝试这样做。 所以更优雅的方式就是使用
killall -u myusername dropbox
并且如果您当前由该用户登录:
killall -u "$(whoami)" dropbox
或甚至可能
killall -u "$USER" dropbox
更新:好吧,看起来像这样的人回答。 但是,有一件重要的事情要知道。 只是发送一个信号给进程并不意味着它会立即终止(或者killall要等待它终止)。 因此,如果您认为Dropbox已经消失,Dropbox可能会试图安全终止(可能需要一些时间才能完成)。 只是一个要考虑的事情。