すべてのコマンドに対してsudoを無視します。

すべてのコマンドに対してsudoを無視します。

現在、デフォルトユーザーがrootであり、そのパッケージがインストールされておらず、この場合追加するオプションがないため、sudoコマンドを使用できないLinuxバリアントを開発しています。デフォルトでは、すべてのコマンドはroot権限で実行されます。エラーを印刷するにはsudoを使用してくださいsh: sudo: not found

sudo残念ながら、これらのテストは他のLinuxディストリビューションでも実行されるため、多くのコマンドを含むテストストアがあります。

私の質問は:bashスクリプトや同様のスクリプトを準備したら、sudoどのコマンドからもスキップできますか?

つまり、sudoコマンドを実行したときに実行し、その部分を削除したいとsudo cat <some_path>思います。すべてのコマンドに対してこのように動作するため、スクリプトは起動時に実行され、すべてのsudoコマンドに対して機能します。cat <some_path>sudo

ベストアンサー1

単純なランダムパススルースクリプトは次のとおりです。

#!/bin/sh
"$@"

与えられた引数を取得し、最初の引数をコマンド名としてコマンドを実行します。したがって、sudo実行中のどこかにインストールされている場合は、今と同じことを行う必要があります。$PATHsudo ls -l "what ever"ls -l "what ever"

もちろん、どのオプションも見ていません。たとえば、名前付きsudo -sコマンドを実行しようとすると-sエラーが発生する可能性があります。

おすすめ記事