ワイルドカードがファイルと一致するかどうかを判断するために、ワイルドカードを使用して ls を作成し、戻りコードを確認しています。これはうまく機能しますが、ファイル サイズが 0 のファイル 0 が常に作成されます。誰かが理由を見ますか?
$SSTDIR=/tmp/test
$SSTFILE=test
ls -1 $SSTDIR/$SSTFILE* &> /dev/null
if [ $? = 0 ]; then
exit 2
fi
どんな助けでも大歓迎です:)
編集:
# Anzahl Parameter überprüfen
if [ ${#} == "6" ]; then
SST=$1
IN=$2
INFILE=$3
SSTDIR=$4
SSTFILE=$5
SORT=$6
else
echo "Verwendung: $0 \"SST Name\" \"Inbound Verzeichnis ohne /\" \"Name der eingehenden Datei\" \"Outbound Verzeichnis ohne /\" \"Name der ausgehenden Datei\" \"Stelle ab der sortiert wird\""
exit 3 # Falsche Anzahl Parameter
fi
# Überprüfe ob das eingehende RVS Verzeichnis nicht leer ist
ls -1 $IN/$INFILE* &> /dev/null
if [ $? > 0 ]; then
exit 1 # Keine Dateien gefunden
fi
# Überprüfe ob das SST Verzeichnis bereits Dateien beinhaltet
ls -1 $SSTDIR/$SSTFILE* &> /dev/null
if [ $? = 0 ]; then
exit 2 # Dateien existieren bereits im SST Verzeichnis
fi
それがすべてです。さらに下向きがありますが、出口でスポットをテストしたので、それは問題の原因ではありません。