特定のユーザーがログインしたときに特定のbashスクリプトを実行したい.そのユーザーの初期化ファイルでスクリプトを呼び出すことを考えました.bashrc
.初期化ファイル。これどうやってするの?
質問する
293 次
3 に答える
2
ユーザーの .bashrc を root が所有し、644 パーミッションを持つようにします。次のようにします。
run_specific_command_that_the_user_cannot_bypass
[ -r ~/.bashrc.user] && . ~/.bashrc.user
または、システム全体の /etc/profile (またはボックスで呼び出されているもの) を使用します。他に選択肢はありません。
于 2013-01-09T13:31:07.317 に答える
0
/etc/bash.bashrc
orの末尾に次のような行を追加します/etc/profile
。
if [ $USER == 'jsmith' ]; then do-something-interesting; fi
于 2013-01-09T13:38:09.787 に答える
0
無限ループでコマンドを使用して解決できfinger
ました。コマンドの行出力が増加すると、誰かがログインしたことを意味し、このユーザーで必要なことを行うことでそれを処理できます。コードは次のとおりです。
#! /bin/bash
n=0;
while(true)
do
if [ $n -gt `finger | awk 'END{print NR}'` ]
then
mailx -s "hey you" `awk 'END{print $1}'` < mailBody
fi
n=`finger | awk 'END{print NR}'`;
done
注: で初期化n
しn=${finger | awk 'END{print NR}'}
て、スクリプトの実行の開始時に誰かがログインしたと見なさないようにするか、必要に応じて変更できます。
于 2013-01-15T07:22:58.093 に答える