GNU/Linux >> Belajar Linux >  >> Linux

Gabungkan file pdf dengan pengurutan numerik

Anda dapat menyematkan hasil perintah menggunakan $() , sehingga Anda dapat melakukan hal berikut

$ pdfunite $(ls -v *.pdf) output.pdf

atau

$ pdfunite $(ls *.pdf | sort -n) output.pdf

Namun, perhatikan bahwa ini tidak berfungsi saat nama file berisi karakter khusus seperti spasi putih.

Jika Anda dapat melakukan hal berikut:

ls -v *.txt | bash -c 'IFS=$'"'"'\n'"'"' read -d "" -ra x;pdfunite "${x[@]}" output.pdf'

Meskipun kelihatannya agak rumit, itu hanya kombinasi dari

  • Bash:Membaca baris file yang dipisahkan tab ke dalam array
  • buat daftar argumen yang berisi spasi putih
  • Bagaimana cara keluar dari tanda kutip tunggal di dalam string dengan tanda kutip tunggal?

Perhatikan bahwa Anda tidak dapat menggunakan xargs sejak pdfunite membutuhkan input pdf sebagai tengah argumen. Saya menghindari penggunaan readarray karena tidak didukung di versi bash yang lebih lama, tetapi Anda dapat menggunakannya sebagai pengganti IFS=.. read -ra .. jika Anda memiliki bash yang lebih baru .


Linux
  1. Cara Menemukan file besar linux dengan perintah find dan du

  2. Bagaimana Cara Grep Dalam File Pdf?

  3. File Cat Dengan Direktori?

  1. Ganti Nama File Di Direktori?

  2. Urutkan File Dalam Folder Tertentu Dengan Ranger?

  3. Cadangkan file Anda dengan rsync

  1. Temukan File atau Direktori Terbesar?

  2. Gabungkan / ubah beberapa file PDF menjadi satu PDF

  3. Bagaimana cara mengurutkan file ke dalam folder berdasarkan tipe file di bash (dengan perintah 'file')?