Programming

디렉토리의 모든 파일 이름을 $ filename_h에서 $ filename_half로 바꾸시겠습니까?

procodes 2020. 7. 16. 20:29
반응형

디렉토리의 모든 파일 이름을 $ filename_h에서 $ filename_half로 바꾸시겠습니까?


간단하다.이름을 바꾸려면 어떻게합니까

05_h.png
06_h.png

05_half.png
06_half.png

적어도, 나는 그것이 간단하다고 생각하지만, 당신이 이미 알지 않는 한 이런 종류의 일은 Google에 어렵습니다. 감사....


외부 명령을 호출 할 필요없이 bash를 사용하십시오.

for file in *_h.png
do
  mv "$file" "${file/_h.png/_half.png}"
done

추가하지 마십시오 #!/bin/sh

그 한 줄짜리가 필요한 사람들을 위해 :

for file in *.png; do mv "$file" "${file/_h.png/_half.png}"; done

 

rename

명령을 보십시오 :

rename 's/_h.png/_half.png/' *.png

최신 정보:

사용법 예 :내용을 만들다

$ mkdir /tmp/foo
$ cd /tmp/foo
$ touch one_h.png two_h.png three_h.png
$ ls 
one_h.png  three_h.png  two_h.png

테스트 솔루션 :

$ rename 's/_h.png/_half.png/' *.png
$ ls
one_half.png  three_half.png  two_half.png

for f in *.png; do
  fnew=`echo $f | sed 's/_h.png/_half.png/'`
  mv $f $fnew
done

순수한 bash 솔루션을 찾고 있습니까? 많은 접근 방식이 있지만 여기에 있습니다.

for file in *_h.png ; do mv "$file" "${file%%_h.png}_half.png" ; done

이것은 현재 디렉토리에서 끝나는 파일 만

_h.png

이름을 바꾸려는 파일이라고 가정합니다 .훨씬 더 구체적으로

for file in 0{5..6}_h.png ; do mv "$file" "${file/_h./_half.}" ; done

이 두 가지 예만 가정하면됩니다. 파일.일반적인 경우를 들어, 파일의 이름을 변경

했다 되고 적용 하기 전에

.


 

rename

perl로 작성된 유틸리티를 사용하십시오 . 그래도 기본적으로 사용할 수 없을 수도 있습니다 ...

$ touch 0{5..6}_h.png

$ ls
05_h.png  06_h.png

$ rename 's/h/half/' *.png

$ ls
05_half.png  06_half.png

for i in *_h.png ; do
  mv $i `echo "$i"|awk -F'.' '{print $1"alf."$2}'`
done

나는 비슷한 질문을했다 : 매뉴얼에서, 이름 바꾸기는

rename [option] expression replacement file

이런 식으로 사용할 수 있습니다

rename _h _half *.png

코드에서 '_h'는 찾고있는 표현식입니다. '_half'는 바꾸려는 패턴입니다. '* .png'는 가능한 대상 파일을 찾고있는 파일의 범위입니다.이것이 c 도움이 될 수 있기를 바랍니다.


다른 방법은 배치 이름 바꾸기 옵션을 사용하여 수동으로 할 수 있습니다 파일-> 파일 사용자 정의 명령-> 배치 이름 변경을 마우스 오른쪽 버튼으로 클릭하면 h를 바꿀 수 있습니다. 반으로.이것은 WinSCP 등을 사용하여 Linux 기반 GUI에서 작동합니다.


 

rename

유틸리티를 사용하십시오 :

rc@bvm3:/tmp/foo $ touch 05_h.png 06_h.png
rc@bvm3:/tmp/foo $ rename 's/_h/_half/' * 
rc@bvm3:/tmp/foo $ ls -l
total 0
-rw-r--r-- 1 rc rc 0 2011-09-17 00:15 05_half.png
-rw-r--r-- 1 rc rc 0 2011-09-17 00:15 06_half.png

짧막 한 농담:


for file in *.php ; do mv "$file" "_$file" ; done

참고 URL :

https://stackoverflow.com/questions/7450818/rename-all-files-in-directory-from-filename-h-to-filename-half

반응형