2017-11-01 3 views
1

알파벳 위에 색인 된 텍스트 파일의 각 줄에 카운터를 추가하고 싶습니다. 이 작업을 수행하는 데 직접적인 방법이 있습니까? 예를 들어, 내 텍스트 파일이각 줄의 시작 부분에 알파벳 카운터를 추가하십시오.

textAblabla 
textBblabla 
textCblabla 
... 
textABblabla 
textACblabla 

처럼이

A textAblabla 
B textBblabla 
C textCblabla 
... 
AB textABblabla 
AC textACblabla 

EDIT로 변환해야 보이는 경우 : 아주 잘 각 라인은 별개 경우 수 있음을 유의해야한다. 나는 이제 내 원래의 질문이 약간의 혼란을 야기했기 때문에 이것을 강조한다.

EDIT 2 : 목록을 인쇄하고 싶지 않아 원본 파일을 열거 형으로 수정 (덮어 쓰기)하고 싶습니다. 펄

+4

목표는 적어도 자신이 해결하기 위해 만든 연구 노력을 보여주기 위해 자신 만의 코드를 추가하는 것입니다. – Cyrus

+0

지금까지 어떤 시도를하셨습니까? 위의 정보는 도움이되지 않습니다. 'text' 부분과'A','AB'라는 부분을 식별 할 수있는 샘플 예제가 필요합니다. – Inian

+0

요점은 알파벳을 내 카운터로 사용하여 텍스트 파일의 각 행을 열거하고 싶다는 것입니다. 아랍어 숫자를 사용하여이 작업을 수행하는 방법에 대한 많은 예제를 보았습니다. 그러나 제 목적 상, 알파벳을 내 카운터로 사용해야합니다. – Birdie

답변

5

:

perl -e '$x=A; while (<>) {print $x++." $_";}' file 
+1

아주 좋은데, 나는 Z를 지나서 문자를 증가 시키면 AA가된다는 것을 몰랐다! – Nic3500

+0

네, 이것은 (거의) 원하는 기능을 제공하는 것 같습니다. 하지만 목록을 인쇄하고 싶지 않아 원본 파일을 열거 형으로 수정 (덮어 쓰기)하고 싶습니다. – Birdie

+0

Cyrus '스크립트의 출력을 가져 와서 원본 파일을 덮어 씁니다. 하찮은. 추신 : 이것이 질문의 품질에 대한 교훈이되게하십시오 :-) – Nic3500

2

-p 명령 줄 옵션을 추가 사이러스 '대답을 적응하고 원본 파일을 덮어 쓸 수있는 코드 변경 :

$ perl -pi -e 'BEGIN { $x="A" }; $_ = $x++ . " $_"' your_file_here 
0

로를 나오지

sed -E 's/([^A-Z]+)([A-Z]+)(.*)/\2 \1\2\3/' infile 

-i를 덮어 씀 추가

관련 문제