ファイルから特殊文字を削除

ファイルから特殊文字を削除

私はすでにこれを持っています:

'< Jan 20 Sep> This is the sample out put  
This is Sample 
>

'< Jan 21 Sep> This is the sample out put 
This is Known Errors 
 > 

したがって、ファイルから>特殊文字をすべて削除する必要があります。特殊文字>のある行を削除するだけです。私は次のような出力が欲しい

'< Jan 20 Sep> This is the sample out put 
This is Sample 
'< Jan 21 Sep> This is the sample out put  
This is Known Errors 

答え1

質問に示すように、「>」文字が1行に表示されたら、次のことができます。

grep -wv '>' thefile

結果:

'< Jan 20 Sep> This is the sample out put
This is Sample

'< Jan 21 Sep> This is the sample out put
This is Known Errors

答え2

これにより、各行の先頭にある文字が削除され、>出力がSTDOUTとして印刷されます。出力をファイルに書き込むには、-iオプションを使用するか、出力をリダイレクトする必要があります。sed

sed 's%^>%%' <filename>

たとえば、次のコマンドでテストできます。

% sed 's%^>%%' <<'EOF'
'< Jan 20 Sep> This is the sample out put
This is Sample
>
EOF

結果

'< Jan 20 Sep> This is the sample out put
This is Sample

答え3

これらのコマンドを使用すると、目的の結果を得ることができます。

command | sed '/^ \?> \?$\|^$/d'

または

sed '/^ \?> \?$\|^$/d' file.txt

正規表現は次のとおりです。

何でもマッチ/pattern/

>オプションの先行または末尾のスペースを含む行を含みます。^ \?> \?$

または\|

^$

削除d

関連情報