[완료] tr을 이용해 디렉토리내의 모든 파일이름을 대문자로 바꿀 수 있을까요??

고양이를부탁해의 이미지

안녕하세요!!

KLDP에서 항상 많은 도움을 받고 있는 리눅서랍니다 'ㅡ';;

tr을 이용해 디렉토리내의 모든 파일이름을 대문자로 바꾸고 있는데

잘 안되네요.

for를 통해 현재 디렉토리의 모든 파일에 접근해서

그 파일명을 tr에 넘기고 tr로 변경된 문자열을 사용해서

mv로 바꾸면 될꺼같은데...

#!/bin/sh
for file in *
do

str=""

$file | tr "[a-z]" "[A-Z]" > str

mv $file $str

done

실행해보니 잘안되네요..

좋은 말씀 부탁드립니다!

cinsk의 이미지

for f in *; do
  upper=`echo "$f" | tr "[a-z]" "[A-Z]"`
  mv -i "$f" "$upper"
done

--
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://www.cinsk.org/cfaqs/

고양이를부탁해의 이미지

cinsk님 또 도움을 받네요 ^^;;
``를 넣는거 전까지는 저도 생각을 해봤는데..
``가 무엇을 의미하는지는 한번 찾아봐야겠네요

쉘 프로그래밍에 초보라서 'ㅡ';; 다시한번 감사합니다!!

좋은 나날들 보내세요!
-----------------------------------------
힘들면 즐겁다.


------------
힘들면 즐겁다.