«dirname: недопустимая опция — '/'» Ошибка при попытке запустить файл .sh?

«dirname: недопустимая опция — '/'» Ошибка при попытке запустить файл .sh?

Я пытаюсь запустить файл в Linux (Ubuntu 14.04), но получаю следующую ошибку:

dirname: недопустимая опция — '/' Попробуйте «dirname --help» для получения дополнительной информации.

Команда, которую я использую для запуска файла .sh, выглядит следующим образом:

./extract-files.sh

Но когда я это печатаю (да, я в каталоге, где это находится), он выдает мне эту ошибку. Помогите!

решение1

Я не буду пытаться понять весь скрипт. Но я вижу, что dirnameон вызывается один раз, и я предполагаю, что это выражение:

cat proprietary-blobs.txt | grep -v ^# | grep -v ^$ | sed -e 's#^/system/##g'

должен генерировать список путей к файлам, при этом по крайней мере один из элементов не является допустимым путем.

Легко вызвать такое же сообщение об ошибке:

$ dirname -/
dirname: invalid option -- '/'
Try 'dirname --help' for more information.

Внутри proprietary-blobs.txt находятся:

-/system/app/OmaDmclient.apk
-/system/app/qcrilmsgtunnel.apk
-/system/app/shutdownlistener.apk
-/system/app/SprintHiddenMenu.apk
-/system/app/TimeService.apk
-/system/app/UpdateSetting.apk

Все эти ошибки:

dirname -/system/app/OmaDmclient.apk
dirname: invalid option -- '/'
Try 'dirname --help' for more information.

Там написано

This file is generated by device/common/generate-blob-lists.sh - DO NOT EDIT

Поэтому я считаю это ошибкой в ​​скрипте.

Связанный контент