GNU/Linux >> Belajar Linux >  >> Linux

Cetak Semua File Dalam Folder?

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 mencoba
ls |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"

Linux
  1. Cetak Dua File Dalam Dua Kolom?

  2. Bagaimana Cara Mencetak Nama File Yang Hilang Dalam Folder?

  3. sed pemula:mengubah semua kemunculan dalam folder

  1. Jalankan semua skrip shell di folder

  2. Bagaimana cara memindahkan semua file dari direktori saat ini ke direktori atas?

  3. Bagaimana cara chown/chmod semua file di direktori saat ini?

  1. Menghitung semua kemunculan string dalam semua file dalam folder

  2. Hapus semua /var/log?

  3. Menyebarkan folder file template menggunakan ansible