misalkan ls
retunrs file1 file2 dir1 dire2 ...
, saya ingin mencetak you have file1 file2 dir1 dire2 ... in currnent folder
.
Bagaimana saya bisa melakukannya?ls | xargs -i echo 'you have {} in current folder'
cetakan
you have file1 in current folder you have file2 in current folder you have dir1 in current folder you have dir2 in current folder you have xxx in current folder
juga, saya telah mencobals |xargs printf 'you have %s %s %s %s in current folder'
tapi tidak bisa. karena jumlah file tidak terbatas. apa sintaks yang tepat untuk printf
dalam hal ini?
ls | xargs printf 'you have [email protected] in current folder'
adalah yang terdekat yang bisa saya dapatkan, tetapi tidak berhasil.
Jawaban yang Diterima:
Berikut ini akan berfungsi tetapi mungkin memiliki beberapa implikasi keamanan negatif:
echo "You have" * "in current folder"
IMO cara yang lebih baik, tetapi membutuhkan dua baris adalah:
files=(*)
echo "You have ${files[@]} in curent folder"
Dengan printf:
files=(*)
printf '%s ' "You have ${files[@]} in current folder"
Bagaimana Mendapatkan Notifikasi Saat Svcadm Memulai Ulang Layanan yang Mati?
Mengapa Terminal Baru Di Spawn Luar Biasa Dengan Shlvl>1?