한 디렉터리에서 다른 디렉터리로 파일 목록을 복사하고 즉시 대상 파일 이름을 수정하는 방법

한 디렉터리에서 다른 디렉터리로 파일 목록을 복사하고 즉시 대상 파일 이름을 수정하는 방법

한 디렉터리에서 다른 디렉터리로 파일 목록을 복사하는 방법을 제안해 주실 수 있나요?

복사하는 동안 스크립트는 파일 이름의 첫 글자를 대문자로 시작하고 다른 모든 글자는 소문자로 시작해야 합니다.

답변1

귀하의 고려사항:

for i in *;
do
    fletter=`echo $i| cut -b 1`;                 # FIRST LETTER
    rest=`echo $i | cut -b 2-`;                  # THE REST
    fletter=`echo $fletter | tr "[a-z]" "[A-Z]"`;# CAPITILIZE FIRST LETTER
    rest=`echo $rest | tr "[A-Z]" "[a-z]"`;      # LOWER CASE THE REST
    cp "$i" "/target/directory/$fletter$rest" ;  # COPY TO DESTINATION
done

여기서는 *현재 디렉터리의 파일로 확장됩니다. 이것을 제한하고 싶다면파일단, 다음 사항을 고려하세요.

find . -type f -print0 | while IFS= read -r -d '' i; do
    # rest of the script
done

관련 정보