Як уникнути "-" у башті [дублікат]


14

Можливий дублікат:
інструменти Unix: що робити, якщо файл називається мінусом чогось?

Скажіть, будь ласка, як уникнути цього:

[root @ unix ~] # ./-sh
-bash: ./-sh: У дозволі відмовлено
[root @ unix ~] # chmod + x -sh
chmod: недійсний режим: `-sh '
Спробуйте `chmod --help 'для отримання додаткової інформації.
[root @ unix ~] #

# chmod a + x "\\ - sh" chmod: не вдається отримати доступ до \ \ - sh ': Немає такого файлу чи каталогу
soundhax

Відповіді:


24

Використовуйте --.

Напр chmod +x -- -sh. У мові GNU --означає кінець опцій, тому -shбільше не розбирається як варіант.

[Редагувати] Додано приклад:

жук: / home / hennes / test> touch - -sh

жук: / домашня / хна / тест> лс -л - -ш
-rw ------- 1 користувач hennes 0 2013-01-04 17:20 -ш

жук: / home / hennes / test> chmod + x - -sh

жук: / домашня / хна / тест> лс -л - -ш
-rwx ------ 1 хенні користувачі 0 2013-01-04 17:20 -ш

Цікаво, що це, здається, не працює з відлунням GNU, хоча це працює з GNU printf. Це працює: printf -- -sh. І це зовсім не так : echo -n -- -sh.
Лукаш Покорний
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.