Ich versuche, ein kleines Bash-Skript zu machen, bestimmte Dateien aus einigen Lieferordnern eines FTP-Servers zu filtern, und wenn die Dateien mit einer bestimmten Dateibenennungskonvention übereinstimmen, sollte es passieren.Wenn Anweisung muss mehrere Möglichkeiten übereinstimmen
Ich habe eine Funktion zum Verarbeiten der Ordner erstellt.
#!/bin/bash
function folder_search {
find FILE in `find ${DIR}/ -maxdepth 1 -type f -mmin +5 -name "*.doc" `; do
BASENAME=`basename $FILE`
if [[ $BASENAME == $NAMECONV1 or $BASENAME == $NAMECONV2 ]]
then
"some commands"
else
"some other commands"
fi
}
#folder 1
DIR=/tmp/folder1
NAMECONV1="ABC[0-9][0-9][0-9].doc"
NAMECONV2="NL[0-9][0-9][0-9].doc"
folder_search
#folder 2
DIR=/tmp/folder2
NAMECONV1="ABC[0-9][0-9][0-9].doc"
NAMECONV2="B[0-9][0-9][0-9].doc"
folder_search
Es gibt mehr als 40 Ordner mit jeweils ihrer eigenen akzeptierten Namenskonvention, also muß ich es dynamisch von Variablen in der IF-Anweisung haben.
Aber ich kann nicht die richtige Menge von []
{}
''
""
()
``
, um es Arbeit finden.
Jede Hilfe zu diesem oder einem ganz anderen Ansatz würde helfen.
Danke, das funktioniert und ist implementiert. Danke dafür. – SHLelieveld