2016-12-03 8 views
-7

私はこれを長く探しましたが、実際にこのsedが何をするのか分かりませんでした!このsedコマンドは何をしますか?

sed -E $'s:$:\t:' < file1 | cut -f 2 > file2 

どうすれば説明できますか?

+0

あなたはどこでそれを取得しましたか? –

+3

解決策を探すのではなく、 'sed'のドキュメントを検索して読んでください。そうすれば、あなた自身で説明することができます。そして、 'sed'ができる他のことを理解してください。 –

+0

FWIWは、各行の末尾にタブ文字を追加する置換文字列です。次に、2番目のフィールドを「カット」します。 – andlrc

答えて

1

これはsedスクリプトではなく、bash、sed、およびcutコマンドを含むシェルスクリプトです。 sedスクリプトは、不正な引用方法、不必要に区切り文字を変更したり、不要な引数を追加したりすることで難読化されています。私はあなたが何を知っていると仮定しますかcut -f 2あなたの質問をさらに難読化する理由を想像できませんので、無視してsed部分に焦点を当てます。

あなたが持っているコマンドは次のとおりです。

sed -E $'s:$:\t:' 

がのが賢明それを書き換えてみようとあなたが得る:

sed 's/$/'$'\t''/' 

ある'スクリプト区切り文字がなく、わかりやすくするために追加いくつかの余分な空白を持つ:

s/ $/$'\t'/

これは何をしているのですか?行末をタブに置き換える。

+1

これは結局、非常に単純なものでした...あなたの返事をありがとう:) –

関連する問題