2016-12-07 14 views
0

私のファイルがある次の行:ファイル内の別の行のために先頭に異なるプレフィックスを追加する方法

hello 
hi 
hey 

私は、最初の行の先頭に文字Bを手紙Aを印刷するためにPerlを使用したいです2行目、3行目の文字はCなどとなります。

私の予想される出力は次のとおりです。

A hello 
B hi 
C hey 

など..

私は次のことを試してみました:

perl -pe 's/^/A/' input.file 

これはおそらく、すべての最初に '' のみ挿入されますファイル内の行。これは私の要求を満たしていません。

異なる行に異なる接頭辞をどのように扱うかわかりません。

+0

これは宿題の質問ですが?あなたは宿題について尋ねることは大歓迎ですが、あなたが得た答えはあなたの目的に合わせて調整するべきです。 – Borodin

答えて

6

インクリメントも、文字列のために働く:

perl -pe 'BEGIN { $ch = "A" } print $ch++, " "' < input_file 

AAZを次の何である場合)。

あるいは、[Zを以下の場合は、あなたが$.変数(入力行番号)を使用することができます:

perl -pe 'print chr 64 + $., " "' < input_file 
+0

私は 'perl -pe 'print $ c = $ c?++ $ c:' A '、' '" input.file'で終わりました。 '<'を使う必要はありません。 – Borodin

関連する問題