ファイル入力文字列からいくつかのパターンを削除しようとしています(ファイルを1行ずつ解析します)。以下は文字列の例です。
1: (10/17 12:49:31.175) - CONSTANT ID1 - CONSTANT ID2: RAW DATA OUT > [0x00,0xa2,…,0x00]
出力が次のようになります。
(12:49:31.175): RAW DATA OUT : [0x00,0xa2,…,0x00]
egrep
試してみましたが、sed
今まで運がありませんでした。エラーまたは「終了していない代替モード」エラーが引き続き発生しました。私が試した例は次のとおりです。
echo $line | sed -e 's/.*\s\([0-9]*:[0-9]*:[0-9]*.[0-9]*\)'
どんな助けでも大変感謝します。私は通常bashよりもバッチファイルを好みます。アップルシステム/X。
編集する:
私は次のファイルを読んでいると言うべきです:
while read line
do
line
その後、ファイルの各行に対してアクションを実行したいと思います。
ベストアンサー1
perl
から電話をかけることもできますbash
。 arg は-n
各行を繰り返す。-e
スクリプトが一行であることを意味します。
cat in.txt | perl -ne 's{.*(.*\().*? (.*) -.*(:.*?)\s\s+.*(\[.*)}{$1$2$3 : $4};'