テキストファイルの各行から最初と最後の文字を削除する必要があります。例えばtxtファイルの各行から最初と最後の文字を削除します
:
入力
$cat file1.txt
|head1|head2|head3|
|1|2|3|
|2|3|4|
出力:
SEDを使用してhead1|head2|head3
1|2|3
2|3|4
テキストファイルの各行から最初と最後の文字を削除する必要があります。例えばtxtファイルの各行から最初と最後の文字を削除します
:
入力
$cat file1.txt
|head1|head2|head3|
|1|2|3|
|2|3|4|
出力:
SEDを使用してhead1|head2|head3
1|2|3
2|3|4
:
sed 's/.$//; s/^.//' inputfile
このコマンドは最初の '|'のみ。最後のものではありません – smisra3
| MRCコード|製品|ブラボーマイナー|期間|現年|バージョン|国コード| G/L Accoun |純資産単位 - アンヌム| MU |売却額 - |売上高 - 月間|販売通貨| ICPフラグ|アップロードID | | 1757 | 02.100.004 | 47830 | 10 | 2016 | 0 | PR | 60515900 | 1.000 | EA | 0.00 | 0.000 | 0.00 | | Y | 157282 | – smisra3
サンプルデータを追加 – smisra3
1つのsedコマンドでそれを行うための簡単な方法:
sed -E 's/^.|.$//g' file
行の先頭または末尾の文字をマッチし、何も置き換えません。基本モードでは
、|
ニーズをエスケープすることを忘れないでください:
sed 's/^.\|.$//g' file
このコマンドは最初の '|'のみ。最後のものではありません – smisra3
| MRCコード|製品|ブラボーマイナー|期間|現年|バージョン|国コード| G/L Accoun |純資産単位 - アンヌム| MU |売却額 - |売上高 - 月間|販売通貨| ICPフラグ|アップロードID | | 1757 | 02.100.004 | 47830 | 10 | 2016 | 0 | PR | 60515900 | 1.000 | EA | 0.00 | 0.000 | 0.00 | | Y | 157282 | – smisra3
がsmapleのデータを追加しました – smisra3
awk
の場合は便利です:
awk '{print substr($0,2,length($0)-2)}' file
head1|head2|head3
1|2|3
2|3|4
smisra- @次の試してみてくださいでした、それはであなたを助けるかもしれません同じです。
awk '{gsub(/^\||\|$/,X,$0);print}' Input_file
いつもパイプで終了しますか? –
| MRCコード|製品|ブラボーマイナー|期間|現在の年|バージョン|国コード| G/L Accoun |純資産単位 - アンヌム| MU |売却額 - 単位当たり純資産|毎月|販売通貨| ICPフラグ|アップロードID | | 1757 | 02.100.004 | 47830 | 10 | 2016 | 0 | PR | 60515900 | 1.000 | EA | 0.00 | 0.000 | 0.00 | | Y | 157282 | – smisra3
上記のサンプルデータを – smisra3