NO pubkey в xubuntu 11.10, когда я использую apt-get update [duplicate]

find folder* -name 'test' -exec mv {} {}/../.. \;

Объяснение

find folder* Поиск в любом ./folder* (шаблоны glob, расширенные оболочкой)

-name 'test' для файлов с именем test.

-exec mv {} {}/../.. \; Перемещает их на два уровня выше1. {} заменяется на найденное имя. Опция -exec должна быть завершена с помощью скелетной точки с запятой. Вы можете выполнить сухой пробег, добавив echo до mv.

1 Почему два уровня вверх? Если мы переместим папку в родительскую папку, мы попросим сделать ее вложенной папкой с ее текущей супер-папкой, поэтому она останется в текущем месте. Однако мы хотим переместить его, чтобы он стал подпапкой родителя родителя. Расширенная команда будет выглядеть как mv folder1/js/test folder1/js/test/../.., которая расширена до mv folder1/js/test folder1.

Примечание

Выполнение этой команды выдаст предупреждения типа:

find: ‘folder1/js/test’: No such file or directory
[d10 ], потому что он пытается выполнить поиск в этой папке после ее перемещения. Это можно отключить, указав 2> /dev/null.

0
задан 1 January 2012 в 23:18

0 ответов

Другие вопросы по тегам:

Похожие вопросы: