スクリプトを実行する前に「at」コマンドキューに追加したときに設定されたカスタム環境変数にアクセスできるかどうか疑問に思います。 TERM、DISPLAY、SHELLOPTS、_、PPID、BASH_VERSINFO、EUID、UID、GROUPSなどの特定のシステム環境変数は除外されていますが、atqにスクリプトを追加するときに設定されたカスタム環境がある場合は、次のようにします。記録され、私のスクリプトが実行されたときにその値を使用します。
私が知りたいのは、スクリプトを「実行」する前にこれらの値にアクセスできますか?
TEST_DIRという環境変数を設定したとしましょう。私は私のPerlスクリプトからその値にアクセスしています。私は午後10時にPerlスクリプトを呼び出すために "at"コマンドにエントリを追加しました。セッションからログアウトし、午後10時前に再度ログインします。 「at」キューに書き込まれたTEST_DIR値にアクセスする方法はありますか?スクリプトが午後10時に実行されたときに「at」キューに追加されたときに設定されたすべての値が考慮されることを知っていますが、その値を知りたいです。
私はすべての場所を検索し、「at」のマニュアルページを見て、保存された環境値について話しますが、それがどこに保存されているかはわかりません。どんな助けでも大変感謝します。
ありがとうございます。
答え1
at
作業環境(変数と作業ディレクトリ)を設定するシェルスクリプトとしてジョブを保存します。以下を実行すると表示されます。
at -c ${jobid}
${jobid}
適切に交換してください(参照atq
)。TEST_DIR
出力で見つけることができる値。