Я обнаружил в monit
init ошибку, которую сейчас хочу исправить самостоятельно. Неисправный код
PID_DIR=$(/bin/basename "$MONIT_PID_FILE")
/bin/mkdir -p -m0700 "$PID_DIR"
Разработчик хочет создать каталог /var/run/monit
из $MONIT_PID_FILE
который равен /var/run/monit/monit.pid
, но, к сожалению, basename возвращает имя файла, а не путь к каталогу. Это приводит к тому, что каталог не создается и не запускается.
Как я могу получить полный путь к каталогу файла, начиная с полного пути к файлу? то есть. /usr/local/myfile.f
=> /usr/local