Ich möchte einen Ordner finden, der nicht „STDF“ heißt, und ihn dann archivieren.
find /a/b/c -mindepth 1 -maxdepth 1 ! -path "STDF" -exec /usr/bin/gzip '{}' \;
Der obige Befehl funktioniert nicht.
Antwort1
Du kannst es versuchen
find /where/to/look/ -type d -not -name STDF
um den Ordner zu finden
jetzt, wo Sie den Fehler erwähnt haben, den Sie erhalten, sehe ich, dass Sie gzip zum Komprimieren eines Ordners verwenden, und das können Sie nicht tun. Schauen Sie sichdiese Antwortfür weitere Informationen zum Komprimieren eines Ordners
Antwort2
Der gzip
Befehl erfordert das r
Flag.
find /a/b/c -mindepth 1 -maxdepth 1 -type d ! -name '*STDF*' -exec sh -c 'tar -zcvf "${1}".tar.gz "$@"' _ {} \;