ディレクトリ内のすべてのTIFFを再帰的に検索する必要がありますが、「」で終わるアーティファクト(基本的にはすべての隠しファイル)を無視します.tif
。このコマンド:
find . -type f -name '*.tif' ! -name '.*'
コマンドラインで希望どおりに動作しますが、bashスクリプト内では何も見つかりません。私は、googleshpereで考えたり、推奨したりすることができる、ほぼすべてのエスケープ順列を 置き換え!
てみました。たとえば、一重引用符を省略しました。明らかに、何かが足りないので、助けていただければ幸いです。 。-and -not
.\*
編集:これがスクリプトの重要な部分です。検索を実行しているディレクトリはパラメータ化されていますが、ハードコードされた状態でデバッグしています。違いはありません:
#!/bin/bash
RECURSIVE=1
DIR=$1
#get the absolute path to $DIR
DIR=$(cd $DIR; pwd)
FIND_CMD="find $DIR -type f -name '*.tif' ! -name '.*'"
if [ $RECURSIVE == 1 ]; then
FIND_CMD="$FIND_CMD -maxdepth 1"
fi
for in_img in $($FIND_CMD | sort); do
echo $in_img # for debugging
#stuff
done