ログインシェルで/etc/profileの一部が実行されないようにするにはどうすればよいですか?

ログインシェルで/etc/profileの一部が実行されないようにするにはどうすればよいですか?

私が持っていると仮定しましょう/etc/profile

# good stuff here
# ...

/usr/local/bin/obnoxious_ascii_art

ログイン時に最後の行が実行されないようにする方法はありますか?必ずルートアクセス権がないとします。

答え1

これを防ぐことができない場合は、少なくとも事実の後に出力を隠すことができます.bash_profile

clear

または行数がわかっている場合:

for l in {1..26}; do
  tput cuu1 # move up a line
done
tput ed # clear to end of screen

答え2


必要に応じて、プロフィールを自宅にコピーして編集できます。

ssh -t user@host '. ~/profile ; bash'

-t Force pseudo-tty allocation

答え3

「obnoxious_ascii_art」の意味によって異なります。

これが管理者のいたずらであれば、rootアクセス権を持つ人と話すことができます。このような場合は社会的問題なので、技術ではなく社会的手段を通じて解決しなければなりません。

うまくいきますが、気に入らない場合は、そもそもなぜそこにいるのかを尋ねてください。おそらくセキュリティに関連していますか?この場合 - 話すのは残念ですが、実行してみてください - マシンがクラッシュしても誰もあなたを責めることはありません。

障害が発生した場合(管理者が何らかの理由で修正を拒否した場合)、または興味がある場合は、Mark Plotnickのコメントが私が考えることができる最高のソリューションです。

これはあなたが期待していた答えではないことを知っていますが、技術的な無差別代入を通じて問題を解決することは常に最善のアプローチではありません。

関連情報