
끝줄마다 증가 숫자를 추가하는 방법은 무엇입니까?
study
fly
run
swim
learning
todo
no
되다
study20978
fly20979
run20980
swim20981
learning20982
todo20983
no20984
답변1
저는 Notepad++ 사용자이지만 무료로 사용하고 싶습니다.AWK간결하고 효과적이기 때문에 이를 위한 도구입니다.
AWK해결책(그냥awk.exe 다운로드그리고 다음 명령줄을 실행하세요)
awk "BEGIN { c = 20978 } { print $0 c++ }" input.txt > output.txt
결과:
study20978
fly20979
run20980
swim20981
learning20982
todo20983
no20984
다운로드 중:
도구를 설치할 필요도 없습니다. 다운로드하고 압축을 풀기만 하면 됩니다.바이너리.zipEXE는 에 있습니다 gawk-3.1.6-1-bin.zip\bin\awk.exe
.
지침의 내용은 다음과 같습니다.
BEGIN { c = 20978 }
우리는c
으로 초기화했습니다20978
.BEGIN
섹션은 한 번만 실행됩니다.- 섹션은
{ print $0 c++ }
각 줄마다 한 번씩 실행됩니다. 해당 줄( 에 저장되어 있음$0
)과 카운터 값c
(즉시 증가합니다:c++
) 을 인쇄합니다.
재사용 가능하게 만들기:
나중에 사용할 수 있도록 소스 코드를 보관하려면 numbering.awk
좀 더 나은 형식으로 파일에 저장하세요.
BEGIN { c = 20978 }
{ print $0 c++ }
그리고 해당 소스 파일을 참조하는 수정된 명령줄을 사용하십시오.
awk -f numbering.awk input.txt > output.txt
이 명령을 파일에 저장할 수 있으므로 numbering.bat
기억할 필요가 없습니다.
추가 설명:
귀하의 정보를 위해 덜 비밀스러운 소스 형식은 다음과 같습니다.
# this section runs once at the beginning
BEGIN { c = 20978 } # initialization of the counter "c"
# this section runs once for each line
{ print $0 c; # print original line followed by value of counter "c"
c = c + 1; # assign value of calculation "c + 1" into "c"
}