Jawaban:
Untuk mencetak ukuran dan path lengkap, coba ini.
find /[123]/a/* -type f -printf '%s %p\n'
Lihat man find
string format lain yang dapat Anda gunakan -printf
. Secara khusus, Anda mungkin ingin %P
atau %f
bukannya %p
dan mungkin %b
bukan %s
.
[123]
cocok dengan nama yang merupakan digit tunggal dalam kisaran 1-3; mungkin memperluas *
atau sesuatu yang sedikit lebih dibatasi jika contoh Anda tidak persis sesuai dengan kenyataan yang Anda coba gambarkan.
GNU find
harus menjadi standar pada CentOS tetapi jika Anda membutuhkan kode portabel yang tepat, mungkin gunakan find ... -exec stat {} \;
(tetapi perhatikan bahwa stat
juga memiliki masalah portabilitas; perintah harus ada pada sebagian besar platform tetapi bagaimana cara membuatnya mencetak sesuatu yang spesifik bervariasi antara implementasi). Pilihan lain adalah find ... -ls
tetapi kemudian Anda menentang parsing ls
.
Jika Anda tidak perlu melintasi subdirektori, Anda tidak perlu find
.
stat -c '%s %n\n' /[123]/a/*/*
a
bawah subdirektori tingkat pertama, ia akan perlufind /[123]/ -type f -path '*/a/*' ...
.