대상 디렉터리 이름을 입력받고 디렉터리 내용을 다음과 같이 리스트한다.
#!/bin/bash
# 사용법 testno1.sh [디렉터리]
# 대상 디렉터리와 모든 하위 디렉터리 내에 있는 파일들을 리스트
cd $1
for file in *
do
if [ -f $file ]
then
echo -----------------------------------
echo 디렉터리 $1 의 파일 리스트
echo ----------------------------------
echo " $file "
fi
if [ -d $file ]
then
/home/tkjoo/bash_test/testno.1sh $file
fi
done
이렇게 하면 읽는 도중에 하위디렉토리에 있는 파일 들도 에코로 알려주는 방식이 가능해질줄알았는데,
다음과 같은 문제가 발생합니다.
1. 하위에 있는 디렉토리를 읽지못합니다.
2. 디렉토리에 있는 파일을 한꺼번에 차례대로 에코로 나타내고 싶은데, 저명령어를 계속해서 반복합니다.
어디가 문제인지 잘 모르겠는데 코딩관련 조언좀 부탁드립니다.
댓글 0