2010-05-23 3 views
2

나는이 같은 파일 이름이 포함 된 파일이 있습니다bash의 목록에있는 파일의 이름을 바꾸려면 어떻게해야합니까?

my_cool_file.xxx 
my_cool_file2.xxx 
my_cool_file3.xxx 

나는이있는 폴더가 :

some_file.xxx 
some_file2.xxx 
some_file3.xxx 

내가 파일 이름 파일에서 한 줄을하기 위해 bash는 스크립트를 가지고 싶습니다 폴더의 파일 하나의 이름을 바꿉니다.

이 방법이 있습니까?

+1

정말 더 나은 사양을 수행해야합니다. –

답변

2

참고 :이 답변은 일반적으로 좋지는 않지만 OP 문제를 해결했습니다.

모든 파일은 _file.xxx 또는 _fileN.xxx로 끝나나요?

기본적으로 파일 이름의 접두사 만 변경 하시겠습니까?

, 내가 제대로 문제를 이해 되어 있다고 가정하고, 번호가없는 파일은 file_list.txt 마지막이라는 당신이 실제 원하는 경우 mv와 라인에 트릭을


COUNTER=0 
for FILE in `ls *.xxx | sort`; do 
    COUNTER=$(($COUNTER+1)) 
    echo Moving $FILE to `sed -n ${COUNTER}p file_list.txt` 
    #mv "${FILE}" `sed -n ${COUNTER}p file_list.txt` 
done

의견을해야 다음 일어날 일.

+0

예. 맞습니다. 이름을 바꾸려는 각 파일 끝에 숫자가 있습니다. – GeoffreyF67

+0

그러면 스크립트가 파일 이름 목록을 읽지 않아도됩니까? 모든 접두어는 파일 세트에서 동일하며 동일하게 변경됩니다. 안 그래요? –

+0

죄송합니다 - 접두사는 폴더에있는 파일에서 동일합니다. 파일에있는 접 두부는 그렇지 않습니다. – GeoffreyF67

관련 문제