ファイルを繰り返し処理してその内容を順序付けし、新しい順序をファイルに保存するシェルスクリプトを作成しました。
#!/bin/sh
for i in "$@"; do
sort $i -k2 -o $i
done
ソートするファイルは、 find
次のようなコマンド:
find . -regex "<myregex>" -exec ./mysort.sh {} +
私はスクリプトを書き、それを特定のユーザーとして1台のマシンを試してみてから、root権限を使って別のマシンにコピーしました。だから今ファイルは持っています chown root:root
私が検索したいと思うすべてのファイルがあるように。
だから今ソートされるファイルはmysort.shと同じフォルダーにあり、私が-execで検索を実行しようとすると
find: "./mysort.sh": Permission denied
スクリプトをサブフォルダーに移動して、コマンドを実行してみました。 -exec ./folder/mysort.sh
またはより高いレベルのフォルダに移動してそれを実行する -exec ../mysort.sh
。私はいつもパーミッション拒否エラーのさまざまなバリエーションを得ます。
回答:
回答№1は2ファイルシステムがでマウントされたかどうかを確認します noexec
フラグ。
しかし、あなたはまだあなたのスクリプトを実行することができます bash
:
bash /path/to/mysort.sh