Verwenden Sie dirname
diese Option, um den Verzeichnispfad abzurufen (anstelle von basename
).
Siehe: dirname
Ich habe in monit
init-Skript einen Fehler gefunden, den ich jetzt selbst beheben möchte. Der fehlerhafte Code lautet
PID_DIR=$(/bin/basename "$MONIT_PID_FILE") /bin/mkdir -p -m0700 "$PID_DIR"
Der Entwickler will das Verzeichnis erstellen /var/run/monit
aus, $MONIT_PID_FILE
das zu gleich /var/run/monit/monit.pid
, aber leider Basisnamen gibt den Dateinamen, nicht Verzeichnispfad. Dies führt dazu, dass das Verzeichnis nicht erstellt und nicht gestartet wird.
Wie kann ich den vollständigen Pfad einer Datei ab dem vollständigen Pfad der Datei erhalten? dh. /usr/local/myfile.f
=>/usr/local
Verwenden Sie dirname
diese Option, um den Verzeichnispfad abzurufen (anstelle von basename
).
Siehe: dirname