/ / Linux find -execパーミッションの拒否 - Linux、シェル、コマンド、redhat、パーミッションの拒否

Linuxのfind -execパーミッションが拒否されました - linux、shell、command、redhat、permission-denied

ファイルを繰り返し処理してその内容を順序付けし、新しい順序をファイルに保存するシェルスクリプトを作成しました。

#!/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