
확장자 없이 파일 이름 목록이 포함된 배열이 있습니다. 예를 들면 다음과 같습니다.
filearray=("fileA" "fileB" "fileC")
이러한 파일은 여러 디렉터리에 분산되어 있습니다. 디렉터리를 반복하면서 각 디렉터리에 있는 배열의 파일에 대해 작업을 수행하려고 합니다. 배열과 함께 find 또는 grep을 사용하는 방법은 무엇입니까?
이런 일을 할 수 있나요? :
Dirarray= ("dirA" "dirB")
for Dir in "${Dirarray[@]}"; do
cd "$Dir";
for file in "${filearray[@]}"; do
if find . -regextype posix-extended -regex "$file"; then;
do X;
fi;
done
done
감사해요!
답변1
나는 다르게 할 것입니다.
Dirarray= ("dirA" "dirB")
for Dir in "${Dirarray[@]}"; do
cd "$Dir"
for file in "${filearray[@]}"; do
# Here a change. If "$file" exists...
if [[ -e "$file"]]; then
: # do something
fi
done
done
man test
더 많은 파일 테스트 옵션은 리소스를 참조하세요 .
그 이유는 이 방법이 훨씬 간단하기 때문입니다. 배열에 정규식이 포함되어 있지 않다면 말이죠.