GNU/Linux >> Belajar Linux >  >> Linux

Menambahkan Word Di Akhir Baris Dengan Sed?

Pertanyaan ini sudah memiliki jawaban di sini :Bagaimana cara menambahkan teks ke akhir baris saat pola cocok?

(5 jawaban)
Tutup 4 tahun yang lalu.

Saya memiliki blok kode sebagai berikut dalam file:

BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1  timeout=30 keepalive=on route=tc_snode1
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1  timeout=30 keepalive=on route=tc_snode2

Saya ingin mencari semua baris yang memiliki tc_ kata kunci dan tambahkan status=D di akhir baris-baris itu. Jadi, entri di atas akan menjadi seperti ini

BalancerMember http://snode1:80 min=1 max=1000 loadfactor=1  timeout=30 keepalive=on route=tc_snode1 status=D
BalancerMember http://snode2:80 min=1 max=1000 loadfactor=1  timeout=30 keepalive=on route=tc_snode2 status=D

Saya menggunakan perintah berikut untuk mencapai ini:

sed -i '/tc_/a status=D' app.conf

Tapi saya bisa melihat status=D sedang mengejar baris baru. Saya tidak ingin baris baru untuk ini. Itu harus ditambahkan dengan ‘ ‘ (spasi) .

Jawaban yang Diterima:

coba

sed  -e '/tc_/s/$/ status=D/'

dimana

  • /tc_/ di jalur tempat tc_ ditemukan,
  • s pengganti,
  • /$ akhir baris,
  • / status=D/ dengan string ini

jika terlihat OK, tambahkan -i untuk mengedit di tempat.


Linux
  1. Ganti kutipan pintar dengan perintah sed Linux

  2. Belajar menggunakan editor teks Sed

  3. Bekerja dengan pipa di baris perintah Linux

  1. Diurutkan dengan sort di baris perintah

  2. Multi-Tugas di baris perintah dengan screenie

  3. Ganti setiap karakter spasi putih di akhir setiap baris dengan '_'

  1. Ganti Rentang Garis Dengan Rentang Garis (sed Atau Lainnya)?

  2. Menghitung Karakter Setiap Baris Dengan Wc?

  3. Pergi ke Awal atau Akhir File di Vim [Kiat Singkat]