2

出力がls -lに似ているfindコマンドを実行しています。新しい行を挿入する必要がありますが、機能していません

find $dir_name -size $sizeFile -printf '%M %n %u %g %s %Tb %Td %Tk:%TM %p\n'

私が得ている出力は次のようなものです:

-rwx------ 1 juanpa juanpa 26615 Nov 04 20:47 ./sample.dir1/vimtutor -rwx------ 1 juanpa juanpa 25557 Nov 04 20:47 ./sample.dir1/cdlist -rwx------ 1 juanpa juanpa 135838 Nov 04 20:47 ./sample.dir1/.phones -rwx------ 1 juanpa juanpa 26615 Nov 04 20:47 ./sample.dir1/testdir1/vimtutor -rwx------ 1 juanpa juanpa 26615 Nov 04 20:47 ./sample.dir1/testdir1/subdir1/vimtutor -rwx------ 1 juanpa juanpa 135838 Nov 04 20:47 ./sample.dir1/testdir1/subdir1/phones -rwx------ 1 juanpa juanpa 25557 Nov 04 20:47 ./sample.dir1/testdir1/subdir1/cdlist -rwx------ 1 juanpa juanpa 20558 Nov 04 20:47 ./sample.dir1/testdir1/subdir1/sample.txt -rwx------ 1 juanpa juanpa 135838 Nov 04 20:47 ./sample.dir1/testdir1/phones -rwx------ 1 juanpa juanpa 25557 Nov 04 20:47 ./sample.dir1/testdir1/cdlist -rwx------ 1 juanpa juanpa 20558 Nov 04 20:47 ./sample.dir1/testdir1/sample.txt -rwx------ 1 juanpa juanpa 20558 Nov 04 20:47 ./sample.dir1/sample.txt -rwx------ 1 juanpa juanpa 26615 Nov 04 20:47 ./sample.dir2/vimtutor -rwx------ 1 juanpa juanpa 25557 Nov 04 20:47 ./sample.dir2/cdlist -rwx------ 1 juanpa juanpa 26615 Nov 04 20:47 ./sample.dir2/testdir2/vimtutor -rwx------ 1 juanpa juanpa 135838 Nov 04 20:47 ./sample.dir2/testdir2/phones -rwx------ 1 juanpa juanpa 25557 Nov 04 20:47 ./sample.dir2/testdir2/cdlist -rwx------ 1 juanpa juanpa 26615 Nov 04 20:47 ./sample.dir2/testdir2/subdir2/vimtutor -rwx------ 1 juanpa juanpa 135838 Nov 04 20:47 ./sample.dir2/testdir2/subdir2/phones -rwx------ 1 juanpa juanpa 25557 Nov 04 20:47 ./sample.dir2/testdir2/subdir2/cdlist -rwx------ 1 juanpa juanpa 20558 Nov 04 20:47 ./sample.dir2/testdir2/subdir2/sample.txt -rwx------ 1 juanpa juanpa 20558 Nov 04 20:47 ./sample.dir2/testdir2/sample.txt -rwx------ 1 juanpa juanpa 20558 Nov 04 20:47 ./sample.dir2/sample.txt

私が行方不明または間違っていることを誰かが知っていますか???

助けてくれてありがとう

4

2 に答える 2

2

探す 。-size 0 -printf '%M %n %u %g %s %Tb\n \b%Td %Tk:%TM %p\n'

使用 \n 上記は一例です。

ちなみに、「ls」形式が必要な場合は、すでにそのオプションがあります。例。

探す 。-サイズ 0 -ls

于 2012-11-05T06:42:11.083 に答える
0

一重引用符の代わりに二重引用符を試してください。

find $dir_name -size $sizeFile -printf "%M %n %u %g %s %Tb %Td %Tk:%TM %p\n"

(編集:実際、システムで二重引用符と単一引用符の両方を試しましたが、どちらもファイルを別々の行に正しく出力しています)

出力を変数に保存していますか?

このようなことをしている場合:

files=$(find $dir_name -size $sizeFile -printf '%M %n %u %g %s %Tb %Td %Tk:%TM %p\n')
echo $files

次に、$files使用するときに二重引用符で囲んでいることを確認してください。

echo "$files"
于 2012-11-05T06:36:18.317 に答える