Это может быть простой вопрос, но как использовать файлы, начинающиеся с «-» с помощью программ командной строки?
Например, я пытаюсь использовать pdfgrep в файле с именем -2013-01-01.pdf, но он жалуется, что нет параметров, определенных для 2, 0, 1, 3 и т. д.
Изменение имени файла на то, что не начинается с «-», решает его, но это не вариант, поскольку файлы не созданы мной. Я просто хочу проверить конкретное изменение, которое, как мне известно, приходит.
Вы добавляете имя файла с помощью ./ (или работает другой относительный или абсолютный путь). Таким образом, он переносится.
Пример:
for zefile in ./*.tmp
do
rm -f "$zefile"
done
Использование -- для указания конца опций не всегда доступно. Некоторые команды узнают об этом, а некоторые - нет. И это изменится в разных системах. Поэтому, в конце концов, он менее портативен.