내보낼 mongodb의 일부 콜렉션을 필터링하려고합니다. 하지만 문자열 비교가 잘못된 것 같습니다. 내 경우에는Bash 문자열 비교가 일치하지 않음
$1
는 localhost:17017/mydb
shop
성공하지 MongoDB를의 컬렉션 중 하나지만, $i == 'shop'
입니다.
#!/bin/bash
colls=`mongo $1 --eval 'db.getCollectionNames();' | tail -1`
IFS=',' read -ra ADDR <<< $colls
for i in "${ADDR[@]}"
do
if [[ $i == 'shop' ]]
then
echo $i
fi
done
또는 mongodb에서 지정된 모음을 내보내는 다른 방법이 있습니까?
"shop"또는 "shop"과 일치 시키려고하십니까? 부분 일치가 필요하다면 * shop *에서 "case"$ i "를 할 수 있습니다) echo $ i ;; esac' ... 이상한 문자의 경우 $ i 주위에 큰 따옴표를 넣으십시오. – technosaurus