sedを使用して特定の列の最初の文字を削除する方法

sedを使用して特定の列の最初の文字を削除する方法

次の構造のファイルがあります。

999963803|081439403|FFF|33
999964211|081823904|FFF|33
999970948|081765738|FFF|33
999971835|081736346|FFF|33
999972780|082127527|FFF|33

2番目の列の最初の文字を削除する必要があります。試してみsed "s/|.1|/^.\(.*\)/\1/" my_file.txtましたが動作しません。結果は次のようになります。

999963803|81439403|FFF|33
999964211|81823904|FFF|33
999970948|81765738|FFF|33
999971835|81736346|FFF|33
999972780|82127527|FFF|33

ベストアンサー1

awkを使用してください:

 awk -F"|" '{print $1"|"substr($2,2)"|"$3"|"$4}' <test

おすすめ記事