これには2つのシナリオがあります。
Sudo権限は特定のグループに付与されます。
ㅏ。新しいユーザーが作成され、グループに割り当てられます。 b。このユーザーを使用すると、シェルスクリプトを介してコマンドを実行すると、コマンド(mkdirなど)を実行できなくなり、「コマンドが見つかりません」というエラーが表示されます。しかし、
ㅏ。オープン端末で同じコマンドを実行すると実行され、ディレクトリが作成されます。同じ考えがあればとても役に立ちます。
これに関する追加情報が必要な場合はお知らせください。
ベストアンサー1
スクリプトでバイナリファイルにフルパスを追加してみてください。/bin/mkdir
コマンドの後にを使用すると、コマンドのフルパスを見つけることができます。which
その後、コマンドのフルパスを返します。たとえば、次のようになります。
$ which mkdir
/bin/mkdir
スクリプトが実行される環境のPATHを設定するためにも使用できますexport
。スクリプトでこれを行うには、export PATH=$PATH:/bin:/usr/bin:/path/to/whateverelse
スクリプトの先頭に次のような行を追加します。
バラよりhttp://www.cyberciti.biz/faq/unix-linux-adding-path/もっと学ぶ。
個人的には、バイナリのフルパスを使用することをお勧めします。