Ich muss eine Datei in mehreren Verzeichnissen vorhanden löschen, wenn es sonst ignoriert wird. Ich habe das folgende Snippet ausprobiert.löschen Sie eine Datei in mehreren Verzeichnissen basierend auf dem Status der Suche Befehl in Unix
ls $dir/"$input.xml" 2> /dev/null
var = `echo$?`
if [[ $var == 0 ]]; then
echo -e "\n Deleting...\n"
rm $dir/"$input.xml"
Es ist fehlgeschlagen.
Kann mir jemand eine bessere Lösung vorschlagen oder das obige Snippet ändern, um der Lösung zu entsprechen?
Ihre Frage unklar ist. Sie sagen zu löschen wenn gefunden, sonst ignorieren. Dann sagen Sie in Ihren Kommentaren, dass Sie einen Fehler werfen müssen, wenn Sie nicht gefunden werden. Bitte erklären Sie ** deutlich, was Sie wollen. –
Sie verwenden den 'ls' Befehl im Beispiel und fragen nach' find' Befehl in Frageanweisung. Bitte erläutern Sie ausführlich in Details in Frage –