最近、bash スクリプトで引用符で囲まれていないパラメーターを使用するのは危険であると読みました。SQLクエリに関してはエスケープが不可欠であることは知っていますが、次のコードには問題は見られません(明らかなディレクトリトラバーサルを除いて)
#!/bin/bash
MYDIR="/tmp/$1"
if [ -d $MYDIR ] ; then
/bin/rmdir $MYDIR
fi
割り当て行の見積もりはすでに十分ですか?
可能と思われる唯一のことは、「if」行が言うことです
# ./mm.sh "arg1 arg2"
./mm.sh: line 5: [: /tmp: binary operator expected
しかし、それは私にはあまり危険に思えません。見逃したものはありますか?
編集:より具体的に。を使用してこれを実行するときに権限を昇格させる方法はありますsudo mm.sh
か?
よろしく、
ルーカス