Пример dirname команды | |
Разработчики) | Различные разработчики с открытым исходным кодом и коммерческие разработчики |
---|---|
Операционная система | Unix , Unix-подобный , IBM i |
Платформа | Кроссплатформенность |
Тип | Командование |
Лицензия | coreutils : GPLv3 + |
dirname
это стандартная компьютерная программа в Unix и Unix-подобных операционных системах . Когда dirname
задано имя пути , он удалит любой суффикс, начинающийся с последнего '/'
символа косой черты ( ), и вернет результат. dirname
описан в Единой спецификации UNIX и в основном используется в сценариях оболочки .
История [ править ]
Встроенная dirname
в GNU coreutils версия была написана Дэвидом Маккензи и Джимом Мейерингом. [1]
Команда dirname также была перенесена в операционную систему IBM i . [2]
Использование [ править ]
Спецификация Single UNIX для dirname
NST:
строка dirname
- нить
Примеры [ править ]
dirname будет извлекать имя пути к каталогу из имени пути, игнорируя любые завершающие косые черты
$ dirname /home/martin/docs/base.wiki / home / martin / docs$ dirname / home / martin / docs /./ home / martin / docs$ dirname / home / martin / docs / / home / martin$ dirname base.wiki .$ dirname / /
Производительность [ править ]
Поскольку dirname
принимает только один операнд, его использование во внутреннем цикле сценариев оболочки может отрицательно сказаться на производительности. Учитывать
при чтении файла ; do dirname " $ file " done <some-input
Приведенный выше отрывок вызовет отдельный вызов процесса для каждой строки ввода. По этой причине обычно используется замена оболочки
echo " $ { файл % / * } " ;
или если необходимо также обрабатывать относительные пути
если [ -n " $ { файл ## * / * } " ] ; затем эхо "." иначе echo " $ { file % / * } " ; фи
Обратите внимание, что они обрабатывают завершающие косые черты иначе, чем dirname.
Заблуждения [ править ]
Мы можем подумать, что пути, заканчивающиеся косой чертой, являются каталогами. Но на самом деле косая черта в конце представляет все файлы в каталоге.
/ главная / мартин / документы /.
Правильный способ представления пути в виде каталога - использовать косую черту в конце и точку. [ согласно кому? ] [ необходима ссылка ]
См. Также [ править ]
- Список команд Unix
- базовое имя
- Путь (вычисления)
Ссылки [ править ]
- ^ https://linux.die.net/man/1/dirname
- ^ IBM . «Qshell для программирования IBM System i версии 7.2» (PDF) . Проверено 5 сентября 2020 .
Внешние ссылки [ править ]
В Wikibook Guide to Unix есть страница по темам: Команды |
- : вернуть часть каталога из имени пути - Справочник по командам и утилитам, Спецификация Single UNIX , Выпуск 7 из Open Group
- - Руководство по командам пользователя Linux
- - Руководство по основным командам OpenBSD