IFS=$'\n'
for CITY in $(cat /home/user/CT.txt)
do
FILES=/mnt/dir1/dir2/$CITY/*
count=0
folder=''
for f in $FILES
do
echo "Processing $f file..."
((count++))
folder=$f
# take action on each file. $f store current file name
#cat $f
done
다음은 CT.txt의 내용과 디렉터리 구조입니다.
cat CT.txt
Test1 Test2 Test3
cd Test1/
|_dir1
exm.xls
cd Test2
|_dir1
exm.xls
출력은 다음과 같아야 합니다.
.xls 파일을 제외하고 Test1 Test2 아래의 파일 내의 디렉터리만 처리하고 싶습니다.
답변1
스크립트의 나머지 부분을 처리하지 않고 ".xls"로 끝나는 파일을 건너뜁니다.
[[ $f =~ .xls$ ]] && continue
또는 이 구문이 마음에 들지 않는 경우:
case "$f" in
(*.xls) continue;;
esac
또는 이 구문이 마음에 들지 않는 경우:
shopt -s extglob
for f in /mnt/dir1/dir2/$CITY/!(*.xls)
do
: etc
done