Jawaban:
Gunakan cut. Misalnya. untuk menghapus 4 karakter pertama dari setiap baris (yaitu mulai pada karakter ke-5):
tail -f logfile | grep org.springframework | cut -c 5-
grep --line-buffered "org.springframeworkuntuk mengatasi masalah itu.
Anda bisa menggunakan cut:
cut -c N- file.txt > new_file.txt
-c: karakter
file.txt: masukan file
new_file.txt: berkas keluaran
N-: Karakter dari N hingga ujung akan dipotong dan di-output ke file baru.
Dapat juga memiliki argumen lain seperti: 'N', 'N-M', '-M' yang berarti karakter ke-n, karakter ke-n, karakter pertama ke karakter ke-13.
Ini akan melakukan operasi ke setiap baris file input.
tail -f logfile | grep org.springframework | cut -c 900-
akan menghapus 900 karakter pertama
cut menggunakan 900- untuk menampilkan karakter ke-900 hingga akhir baris
namun ketika saya menyalurkan semua ini melalui grep saya tidak mendapatkan apa-apa
Saya pikir awkakan menjadi alat terbaik untuk ini karena dapat menyaring dan melakukan fungsi manipulasi string yang diperlukan pada baris yang difilter:
tail -f logfile | awk '/org.springframework/ {print substr($0, 6)}'
atau
tail -f logfile | awk '/org.springframework/ && sub(/^.{5}/,"",$0)'
Ini adalah fungsi sederhana, diuji dalam bash. Parameter pertama fungsi adalah string, parameter kedua adalah jumlah karakter yang akan dihapus
function stringStripNCharsFromStart {
echo ${1:$2:${#1}}
}