たとえば、次のようにします。
tail -f logfile | grep org.springframework | <command to remove first N characters>
私はそれtr
がこれを行う能力を持っているかもしれないと思っていましたが、私にはわかりません。
を使用しcut
ます。例えば。各行の最初の4文字を削除するには(つまり、5文字目から開始します):
tail -f logfile | grep org.springframework | cut -c 5-
sed 's/^.\{5\}//' logfile
そして、5を必要な数に置き換えます...それでうまくいくはずです...
各行の場合は編集
sed 's/^.\{5\}//g' logfile
あなたが使用することができますcut
:
cut -c N- file.txt > new_file.txt
-c:
文字
file.txt:
入力ファイル
new_file.txt:
出力ファイル
N-:
Nから最後までの文字が切り取られ、新しいファイルに出力されます。
'N'、'NM'、'-M'は、それぞれn番目の文字、n番目からm番目の文字、1番目からm番目の文字を意味します。
これにより、入力ファイルの各行に対して操作が実行されます。
tail -f logfile | grep org.springframework | cut -c 900-
最初の900文字を削除します
cut
900-を使用して、行末に900番目の文字を表示します
ただし、これらすべてをgrepにパイプすると、何も得られません。
awk
フィルタリングと、フィルタリングされた行で必要な文字列操作機能の両方を実行できるため、これに最適なツールだと思います。
tail -f logfile | awk '/org.springframework/ {print substr($0, 6)}'
また
tail -f logfile | awk '/org.springframework/ && sub(/^.{5}/,"",$0)'