次のコマンドを通常のユーザーとして実行すると、すべて問題ありません。
$(dirname `readlink -f $0`)
しかし、ルートに切り替えた後、次のエラーが発生しました:
readlink: invalid option -- 'b'
Try `readlink --help' for more information.
dirname: missing operand
Try `dirname --help' for more information.
何か案は?ローカルのFedora 16とAmazon EC2を試してみました。どちらもbashシェルを実行しています。
イラストのために編集します。
ここで問題をさらに説明しなかったことをお詫び申し上げます。ここにシナリオがあります:
通常のユーザーアカウントを使用:
$ pwd
/home/myuser
$ export MY_DIR=$(dirname `readlink -f $0`)
$ echo MY_DIR
/home/myuser
ルートを使用:
# pwd
/root
# export ROOT_DIR=$(dirname `readlink -f $0`)
readlink: invalid option -- 'b'
Try `readlink --help' for more information.
dirname: missing operand
Try `dirname --help' for more information.
# export ROOT_DIR=echo $(dirname `readlink -f -- $0`)
# echo $ROOT_DIR
/root
--(「マイナスマイナス」または「ダッシュダッシュ」)を示していますか?Nevermind-私はここで答えを見つけました:https