일부 텍스트 파일이있는 폴더가 있습니다. 이 폴더의 각 파일 이름의 마지막 문자를 삭제해야합니다. 파일 이름은 아래와 같습니다.폴더의 파일 이름 중 마지막 문자 삭제
1ADFG.txt
RG25A.txt
5SDFC.txt
원하는 출력
1ADF.txt
RG25.txt
5SDF.txt
일부 텍스트 파일이있는 폴더가 있습니다. 이 폴더의 각 파일 이름의 마지막 문자를 삭제해야합니다. 파일 이름은 아래와 같습니다.폴더의 파일 이름 중 마지막 문자 삭제
1ADFG.txt
RG25A.txt
5SDFC.txt
원하는 출력
1ADF.txt
RG25.txt
5SDF.txt
I는 다음과 같이 할 것 : 출력이 좋아 보인다
for i in *.txt; do echo "mv '$i' '${i/?.txt}.txt'"; done
경우, 파이프 그것을 | sh
에, 즉 :
for i in *.txt; do echo "mv '$i' '${i/?.txt}.txt'"; done | sh
이
awk 'BEGIN {FS="."} {print substr($1,1,length($1)-1) "." $2;}'
작업을해야 할 이름의 목록을 feeded
, 단 1 점, 연장의 하나가 있다는 제공.
당신은 또한이 같은 sed
을 사용할 수
$ ls -1
1ADFG.txt
5SDFC.txt
RG25A.txt
$ ls -1|sed "s/\([A-Za-z0-9]\{4\}\)[A-Za-z0-9]*\(\.[A-Za-z0-9]\)/\1\2/g"
1ADF.txt
5SDF.txt
RG25.txt
다른 방법으로 perl rename
유틸리티를 사용하는 것입니다 :
$ rename -n 's/.\./\./' *.txt
1ADFG.txt renamed as 1ADF.txt
5SDFC.txt renamed as 5SDF.txt
RG25A.txt renamed as RG25.txt
숙제가 아니라 사용자를위한 실제 작업 인 경우, 더 많이 사용하는 편집기 (Vim/Emacs)와'moreutils' 패키지의'vidir '도구를 사용하는 것이 훨씬 실용적입니다. –