TobiGschw schrieb:
Wo liegt nur der Fehler oder lieg ich da falsch?
Bitte eine Anleitung nicht nur kopieren und einfügen, sondern auch überlegen, was man da macht...
Also: Die drei Dateien, die du zip zum Archivieren mitgibst, existieren nicht an der Stelle, an der du sie angegeben hast.
Gehen wir mal davon aus, dass du alle drei unter den angegebenen Namen erstellt hast, können wir sie mit find oder locate suchen.
find -name "openvpn-client1.crt" -or -name "openvpn-client1.key" -or -name "ca.crt" 2> /dev/null
oder
locate openvpn-client1.crt openvpn-client1.key ca.crt
Beide liefern dir das selbe Ergebnis, nämlich (so die Dateien existieren) deren Fundort. find zeigt das als relativen Pfad an, locate als absoluten.
Das Ergebnis kannst du jetzt zip mitgeben, um das Archiv zu bauen.
Also entweder bei Nutzung von find:
zip -j client1.zip $(find -name "openvpn-client1.crt" -or -name "openvpn-client1.key" -or -name "ca.crt" 2> /dev/null)
(Erklärung: zip ist das aufgerufene Programm, -j fügt nur die Dateien ohne Ordnerstruktur hinzu, $(BEFEHL) führt erst den Befehl in den Klammern durch und übergibt das Ergebnis dann an zip, also werden die gefundenen Dateien dort zur Archivierung angegeben, zu den weiteren Option von find siehe die verlinkte Seite find bzw. dessen Manpage, 2> /dev/null sorgt dafür, dass etwaige Fehler bei der Suche (z.B. bei Ordnern, für die keine Berechtigung besteht) nicht angezeigt werden (was dadurch erreicht wird, dass die Ausgabe der Standardfehlerausgabe nach /dev/null umgeleitet wird), da diese Ausgabe von zip nicht verarbeitet werden kann, siehe dazu Shell/Umleitungen.
oder bei der Nutzung von locate
zip -j client1.zip $(locate openvpn-client1.crt openvpn-client1.key ca.crt 2> /dev/null
Erklärung ist die selbe wie oben, nur mit der Seite locale bzw. dessen Manpage. 😛