3. OS이야기

Unix 계열에서 디렉토리명 일괄 변경하기

OSSW(Open Source System SoftWare 2010. 3. 24. 11:38


현재디렉토리에서 하부디렉토리 이름 중, 특정 문자열을 포함한 디렉토리 찾기

find . -type d | grep web_test

아래의 redir.sh 파일을 만든후
아래와 같이 redir.sh old_dir new_dir 하시면 됩니다.

repdir.sh 내용

#!/bin/sh

if [ $# != 2 ];then
 echo "Uages: /tmp/repdir.sh <old_dir> <new_dir>"
 exit;
fi

set -x
for dump in `find . -name $1 -type d`
do
   for dir in `find . -name $1 -type d`
   do
      target=`echo $dir| sed "s/$1/$2/g"`
      mv $dir $target
      break
   done
done    
set +x