GNU/Linux >> Belajar Linux >  >> Linux

Hapus spasi putih di setiap awal baris file, menggunakan bash

gunakan dapat menggunakan perl -i untuk penggantian tempat.

perl -p -e 's/^ *//' file 

Untuk menghapus spasi putih sebelum memulai garis jika polanya cocok. Gunakan perintah berikut. Misalnya foo.in Anda memiliki pola seperti ini

      This is a test                                
                    Lolll
                       blaahhh
      This is a testtt

Setelah mengeluarkan perintah berikut

sed -e '/This/s/ *//' < foo.in > foo.out

foo.out akan menjadi

This is a test
             Lolll
                blaahhh
This is a testtt

sed -i 's/ //g' your_file akan melakukannya, memodifikasi file di tempat.

Untuk menghapus hanya spasi putih di awal satu baris, gunakan sed -i 's/^ *//' your_file

Pada ekspresi pertama, kita mengganti semua spasi dengan kosong. Pada ekspresi kedua, kita mengganti di awal menggunakan ^ kata kunci


tr (hapus semua spasi putih):

$ tr -d ' ' <input.txt >output.txt
$ mv output.txt input.txt

sed (hapus spasi putih di depan)

$ sed -i 's/^ *//' input.txt

Linux
  1. Menggunakan Referensi Ke Variabel Bash String Di Sed?

  2. Di Bash, bagaimana cara menambahkan string setelah setiap baris dalam file?

  3. Bagaimana saya bisa menambahkan string ke awal setiap file dalam folder di bash?

  1. Bagaimana cara membaca baris kedua hingga terakhir dalam file menggunakan Bash?

  2. Redirect semua output ke file menggunakan Bash di Linux?

  3. Bagaimana cara memasukkan teks ke baris pertama file menggunakan sed?

  1. Bash:tambahkan string ke akhir file tanpa jeda baris

  2. Bagaimana cara menghitung jumlah tab di setiap baris menggunakan skrip shell?

  3. skrip bash menambahkan teks ke baris pertama file