現在、デフォルトユーザーが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
実行中のどこかにインストールされている場合は、今と同じことを行う必要があります。$PATH
sudo ls -l "what ever"
ls -l "what ever"
もちろん、どのオプションも見ていません。たとえば、名前付きsudo -s
コマンドを実行しようとすると-s
エラーが発生する可能性があります。