GNU/Linux >> Belajar Linux >  >> Linux

Cara menambahkan konten dari banyak file ke dalam satu file

Anda membutuhkan cat (singkatan dari concatenate) perintah, dengan pengalihan shell (> ) ke file keluaran Anda

cat 1.txt 2.txt 3.txt > 0.txt

Pilihan lain, bagi Anda yang masih menemukan postingan ini seperti saya, adalah menggunakan find -exec :

find . -type f -name '*.txt' -exec cat {} + >> output.file

Dalam kasus saya, saya memerlukan opsi yang lebih kuat yang akan melihat beberapa subdirektori, jadi saya memilih untuk menggunakan find . Memecahnya:

find .

Lihat di dalam direktori kerja saat ini.

-type f

Hanya tertarik pada file, bukan direktori, dll.

-name '*.txt'

Kurangi hasil yang ditetapkan berdasarkan nama

-exec cat {} +

Jalankan perintah cat untuk setiap hasil. "+" berarti hanya 1 instance dari cat dihasilkan (thx @gniourf_gniourf)

 >> output.file

Seperti yang dijelaskan dalam jawaban lain, tambahkan konten cat-ed ke akhir file keluaran.


Linux
  1. Cara membagi satu file menjadi beberapa file berdasarkan baris

  2. Menggabungkan File Tertentu Menjadi Satu File Tunggal?

  3. Gabungkan / ubah beberapa file PDF menjadi satu PDF

  1. Bagaimana cara menggabungkan beberapa baris nama file menjadi satu dengan pembatas khusus?

  2. Bagaimana cara mencari konten dari banyak file pdf?

  3. Bagaimana cara membagi satu file teks menjadi beberapa file *.txt?

  1. Bagaimana cara menambahkan output ke file?

  2. Cara gzip semua file di semua sub-direktori menjadi satu file terkompresi di bash

  3. Bagaimana cara gzip banyak file menjadi satu file gz?