【问题标题】:How to set the working directory using gksu gnome-schedule如何使用 gksu gnome-schedule 设置工作目录
【发布时间】:2015-12-15 17:06:43
【问题描述】:

如何使用 gksu gnome-schedule 设置工作目录,以便脚本中引用的所有 shell 都使用我使用 cd 设置的工作目录?

在 Ubuntu 上,我有一个名为 runProcess.sh 的 shell 脚本。该脚本位于名为 /var/myscripts 的目录中。该脚本需要从 /var/myscripts 目录执行,因为该脚本引用同一目录或 /var/myscripts 的子目录中的其他 shell。该脚本还需要以 root 身份运行。

脚本在手动运行时运行良好。但是,当我将它设置为使用 gksu gnome-schedule 运行时,脚本会失败,因为在运行我在 runProcess.sh 中调用的 shell 时它似乎没有使用工作目录

这是我设置在 gksu gnome-schedule 中运行脚本的方式

cd /var/myscripts && ./runProcess.sh

这是一个调用脚本的示例。

#!/bin/bash

. functions.sh

. loadSecrets

. startProcess.sh 

. checkOnProgress.sh

. cleanUp.sh 

【问题讨论】:

  • cd in 脚本?

标签: linux bash ubuntu cron gksudo


【解决方案1】:

默认目录是指 $HOME,您可以使用usermod 命令更改任何用户的终端默认目录:

usermod -m -d /your/path/to/directory username

【讨论】:

  • 谢谢。我还有其他从其他位置运行的 cron 脚本。如果我更改工作目录,它会更改所有其他脚本 cron 作业吗?有没有办法只为我上面的脚本做到这一点?
  • 是的,usermod -m -d 更改 Exist 用户的默认目录,如果您必须运行一些其他脚本,这会产生新问题。 :)
猜你喜欢
  • 2012-01-14
  • 2021-12-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-02
  • 2016-12-02
  • 1970-01-01
相关资源
最近更新 更多