2016-06-16 8 views
-1

私は専用テキストエディタアプリをダウンロードするのではなく、avalable unixツールとコマンドを使用して以下のテキストをクイックフォーマットする方法を探しています。私はubuntuを使用しています。これを行うための最も簡単な方法は何ですか?専用アプリケーションではなくunixコマンドを使用してテキストを編集する最速の方法

{label: "Shelf 1", value: "shelf-1"}, 
{label: "Shelf 2", value: "shelf-2"} 

shelf-1 : Shelf 1 
shelf-2 : Shelf 2 

瞬間に、私は正規表現と検索/置換オプションとの組み合わせで、Ubuntuが持つテキストエディタを使用してそれをやってきました。私は大量のデータをフォーマットしなければならないので、時間がかかりすぎます。

+1

これは非常に簡単に行うために 'sed'または' awk'を使うことができます。 – nu11p01n73R

+0

「vim」または少なくとも「vi」がすでにインストールされている可能性があります。これは非常に強力な検索と置換機能を備えています。それがあなたの紅茶でないなら、確かに 'sed'または' awk'です。 – Thomas

+0

@トーマス - ありがとう。私は今、viを見ています:%s/pattern/replace/gですが、それは複数のステップです。そして、私はまだラベルと価値を裏返す方法を見つけようとしています。生データでは、値のように見え、その後にラベルが続きます。 – blueren

答えて

1

あなたはこのためにawkを使用することができます。

awk -F " : " '{print "{label: \""$2"\", value: \""$1"\"}"}' file.txt 

と仮定すると、あなたのデータはfile.txtで、それは後にあなたが$1:前にデータを持っているとのデータも後$2では、セパレータとして:を使用しています。

+0

これ!どうもありがとう。複数のviステップをスキップするのに役立ちました。 – blueren

関連する問題