Saya memiliki skrip yang menampilkan teks berikut. Ini adalah output dari modem Netopia 2210-02 ADSL2 .
ADSL Line State: Up
ADSL Startup Attempts: 1
ADSL Modulation: DMT
ADSL Data Path: Fast
Datapump Version: DSP 7.2.3.0, HAL 7.2.1.0
SNR Margin: 8.20 9.00 dB
Line Attenuation: 57.50 31.00 dB
Output Power: 17.09 12.34 dBm
Errored Seconds: 0 0
Loss of Signal: 0 476
Loss of Frame: 0 0
CRC Errors: 57921 416
Data Rate: 2880 1024
Bagaimana saya bisa menghapus karakter end-of-line untuk setiap baris? Saya ingin output terlihat seperti ini (Ya jelek):
ADSL Line State: Up ADSL Startup Attempts: 1 ADSL Modulation: DMT ADSL Data Path: Fast Datapump Version: DSP 7.2.3.0, HAL 7.2.1.0 SNR Margin: 8.20 9.00 dB Line Attenuation: 57.50 31.00 dB Output Power: 17.09 12.34 dBm Errored Seconds: 0 0 Loss of Signal: 0 476 Loss of Frame: 0 0 CRC Errors: 57921 416 Data Rate: 2880 1024
Saya mencoba beberapa solusi seperti ini, tetapi mereka tidak berhasil:
# (This simply outputs the contents of the script, unmodified)
stefanl@hosta:~/Work/Cacti $ ./script | sed -e 's/$//'
Saya juga mencoba menggunakan tr
. Saya mengharapkan perintah berikut untuk mengganti setiap karakter baris baru dengan karakter spasi. Ini akan mengambil banyak garis dan menggabungkannya menjadi satu garis panjang. Sebaliknya, ini hanya menampilkan garis keluaran terakhir. Tampaknya untuk menimpa setiap baris berikutnya dengan garis output berikutnya.
stefanl@hosta:~/Work/Cacti $ ./script | tr '\n' ' '
Data Rate: 2880 1024stefanl@hosta:~/Work/Cacti $
stefanl@hosta:~/Work/Cacti $
Perbarui :
Setelah pemeriksaan lebih lanjut, sepertinya setiap baris didahului oleh karakter kembali. Ini muncul ^M
saat menggunakan less
. Jadi, saya menambahkan dua tr
pernyataan. Satu untuk menghapus karakter baris baru, satu untuk menghapus karakter kembali.
./script | | tr -d '\n' | tr -d '\r'
tr '\n' ' '
dantr -d '\n'
akan membungkus garis dengan cara yang aneh. Saya memperbarui pertanyaan saya untuk menunjukkan hasilnya. Jadi, mungkin saya perlu menggunakantr
, tapi saya hanya perlu mencari tahu bagaimana menggunakannya dengan benar.