Я привык использовать 'ls', как в Linux Mint, например, 'ls * .pdf', но в этом варианте Debian 'ls .pdf' жалуется.Вместо этого я использую длину 'find -maxdepth 1 -type f -name ".pdf" -print'.

Чтение этого: странная работа не слишком помогает. У меня есть пакет bash_completions, и у меня нет странных псевдонимов для 'ls' в моем файле ~/.bashrc - я никогда не редактирую /etc /profile или глобальный, где бы он ни находился.

Просто догадываясь, я применил решение в связанном вопросе, но оно не сработало. Я не полностью понимаю «завершено» - я думаю, что это часть «readline» - так что, возможно, краткое объяснение тоже поможет (у него нет страницы «man»).

Это работает, хотя: «complete -p ls * .pdf», что «complete --help» говорит,

 -p        print existing completion specifications in a reusable format

и поэтому мне интересно, должен ли я постоянно применять это «правило»? используя флаг '-D' ...?

РЕДАКТИРОВАТЬ

Просто заметил эту проблему тоже:

for f in *.pdf; do mv "$f" "BOOK - $F"; done

mv: invalid option -- 'R'

РЕДАКТИРОВАТЬ 2

Я попробовал две команды выше, и они отлично работают - на разделе моей ОС. Проблема в том, что когда я перехожу на другой раздел с работающим Linux Mint и pdf-файлами, которые я хочу изменить, эти команды не выполняются. Оба раздела имеют формат ext4, оба имеют одинаковые имя пользователя, имя хоста, UID/GID, разрешения и т.д.

2 ответа2

1

Кажется, что у вас есть имена файлов с начальным тире - , так что используйте:

for f in *.pdf; do mv -- "$f" "BOOK - $F"; done

От man bash :

A -- сигнализирует об окончании опций и отключает дальнейшую обработку опций. Любые аргументы после - обрабатываются как имена файлов и аргументы. Аргумент - эквивалентен -.

1

Если у вас есть имена файлов, начинающиеся с - (минус или дефис), многие программы интерпретируют их как параметры.

Вы можете добавить ./ к пути, чтобы избежать его:

ls ./*.pdf

Многие программы также позволяют вставлять -- прежде чем аргументы имени файла , чтобы сигнализировать конец опций:

ls -- *.pdf

Рекомендуемый подход для пользователей - конечно, переименовать файлы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .