0

サブフォルダーを作成し、マウントされたフォルダーにファイルを展開する必要があるbashスクリプトを作成しています。私の問題は、ルートとしてサブフォルダーを作成できないことです。スクリプトで次のコマンドを実行する必要があります。

su - UnknownUser -c "mkdir MAKEDir"

だから私の質問は、次のようなコマンドを実行するときにユーザー名のみを取得するにはどうすればよいですか

ls -l

ご意見ありがとうございます。

4

4 に答える 4

4

所有者のテキスト名には %U の形式で stat -c を使用し、所有者の uid には %u (またはグループの場合は %G/%g) を使用します。

stat -c %U <filename>
于 2013-11-12T19:18:18.003 に答える
4

statコマンドは実装によって大きく異なりますが、次のように動作します

# GNU stat
# -c may be used in place of --format
$ stat --format %U file.ext

# BSD (Mac OS X, anyway) stat
$ stat -f %Su file.ext
于 2013-11-12T19:18:27.383 に答える
0

「parent」が親ディレクトリの場合...

user=$(ls -ld ${parent} | awk '{print $3}')
sudo -u $user mkdir ${parent}/child1
sudo -u $user mkdir ${parent}/child2
sudo -u $user mkdir ${parent}/child1/grandchild1
sudo -u $user mkdir ${parent}/child1/grandchild2
于 2013-11-13T03:41:10.983 に答える