Я перемещаю некоторые файлы и хочу убедиться, что mv
набранная мной команда верна, прежде чем я начну ее запускать.
Если бы я использовал apt-get
, я мог бы использовать -s
флаг, чтобы выполнить симуляцию, которая фактически делала бы что угодно.
Имеет ли mv
аналогичную функцию, которая имитирует перемещение файлов, но на самом деле ничего не делает?
command-line
mv
starbeamrainbowlabs
источник
источник
man mv
я вижу только-i
флаг, который спрашивает перед перезаписьюmv
У команды ничего нетsimulate
, но я могу написать функцию, которая делает такую проверку. Как это решение?-n
Вариантmv
гарантирует , что Вы не можете перезаписать любые файлы по ошибке, а не ответ , но всегда полезно знать.Ответы:
Этот скрипт должен сделать свое дело. Он также может обрабатывать несколько исходных файлов / каталогов. Используйте его так же, как вы использовали бы
mv
-mvsim source... dest
. Обратите внимание, что он не обращает внимания на параметры и не отфильтровывает их (он просто обрабатывает их как имена файлов) и может плохо работать с символическими ссылками.Несколько примеров:
источник
maybe
выглядит хорошо, но я чувствую, что это более безопасный вариант в настоящее время.Функция ниже предназначена для подробной проверки
mv
синтаксиса. Обратите внимание, что он работает только для 2 аргументов, SOURCE и DESTINATION, и не проверяет наличие-t
флага.Функция должна быть помещена в
~/.bashrc
. Чтобы использовать его немедленно, откройте новый терминал или запуститеsource ~/.bashrc
Вот несколько тестовых прогонов:
источник
На github есть программа под названием возможно, которая может быть тем, что вы ищете.
Согласно их описанию проекта,
maybe
Так что это также покажет вам, что другие программы будут делать с вашими файлами, не только
mv
.maybe
нужен Python для запуска, но это не должно быть проблемой. Его легко установить или собрать с помощью менеджера пакетов Python.Процесс установки и использование программы описаны на домашней странице проекта. К сожалению, в настоящее время у меня нет доступа к системе Linux, поэтому я не могу предоставить вам ни одного примера использования программы.
источник
maybe
для запуска ненадежного кода»!mv
вашей системе?