Проблема сценария Bash, найди, MV Tilde Файлы, созданные Gedit

StackOverflow https://stackoverflow.com/questions/2640260

  •  27-09-2019
  •  | 
  •  

Вопрос

Я использую Linux с Gedit, который имеет прекрасную привычку создавать файл Temp с тильдой в конце для каждого редактирования файлов.

Я пытаюсь переместить все эти файлы одновременно в другую папку, используя следующие:

find . -iname “*.php~” -exec mv {} /mydir \;

Однако теперь его дает мне синтаксические ошибки, как будто он искал через каждый файл и пытается переместить кусок текста. Я просто хочу переместить все файлы, заканчивающиеся в .php ~ в другой каталог. Любая идея, как я это делаю?

Ура бы

Это было полезно?

Решение

Попробуйте этот бейнер:

for D in `find . -iname "*.php~"`; do mv ${D} /mydir; done

Для будущего ссылки, если вы перейдете в вкладку «Редактировать»> «Настройки»> «Редактор», есть флажок «Создать резервную копию файлов перед сохранением», который является парень, ответственным за создание версии Tilde.

Другие советы

GNU найти

find . -iname "*.php~" -exec mv "{}" /mydir +;

или

for file in *.php~
do
 echo mv "$file" /mydir
done
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top