クローンがXDG_RUNTIME_DIRを継承するようにします。

クローンがXDG_RUNTIME_DIRを継承するようにします。

設定するemacsclient必要があるクローンジョブが実行されています。XDG_RUNTIME_DIR変数を/run/user/1000のように設定できますが、crontabこれは cron の所有者がログインした最初のユーザーであると仮定します (そうでXDG_RUNTIME_DIRない場合/run/user/1001)。

croncronジョブの所有者から値を継承するより良い方法はありますか?XDG_RUNTIME_DIR

答え1

提案:

専用のcronスクリプトを作成します。

現在のユーザーの環境コンテキストおよびその他の環境変数を含みます。

cat << EOF > $HOME/croned_script.sh
#!/bin/bash
source $HOME/.bash_profile
export XDG_RUNTIME_DIR=/run/user/1000
#
# your program and arguments from here:
emacsclient
EOF

crontab リストに専用の cron スクリプトを追加します。

この例では、クローンモードは毎日12:00に1回実行されます。

contab -l| sed "-i * 11 * * * bash -c $HOME/croned_script.sh"| crontab

関連情報