mv уже управляют ошибкой “существующий файл”

Существует список Ваших опций здесь на веб-сайте debian.org:

выборка от той страницы

Настольные среды

  • Проект GNOME обеспечивает две вещи: Рабочая среда GNOME, интуитивный и привлекательный рабочий стол для пользователей, и платформа разработки GNOME, обширная платформа для того, чтобы создать приложения, которые интегрируются в остальную часть рабочего стола.

  • KDE является мощной графической настольной средой с открытым исходным кодом для рабочих станций Unix. Это комбинирует простоту использования, современную функциональность и выдающийся графический дизайн с технологическим превосходством операционной системы Unix.

  • Xfce является легкой настольной средой для различного *, ОТКЛОНЯЮТ системы. Разработанный для производительности, это загружает и выполняет приложения быстро при сохранении системных ресурсов.

  • LXDE разработан для работы хорошо с компьютерами на нижнем уровне спектра производительности, такими как более старые ограниченные ресурсом машины, нетбуки нового поколения и другие маленькие компьютеры.

Менеджеры окон

  • Openbox является легким и высоконастраиваемым менеджером окон с обширной поддержкой стандартов. Его функции хорошо зарегистрированы на официальном сайте.

  • FluxBox является windowmanager для X, который был основан на Черном ящике 0.61.1 кода. Это очень легко на ресурсах и легко обработать но полный функций для создания легкого, и чрезвычайно быстро, возможность рабочего стола..

  • Compiz составляет менеджеры окон для X-оконной системы, которая использует 3D аппаратное обеспечение машинной графики для создания быстро составляющих композит настольных эффектов для управления окнами.

  • Wmii является динамическим менеджером окон для X11. Это поддерживает классика и размещающий управление окнами рядом с расширенной клавиатурой, мышью и основанным на файловой системе дистанционным управлением. Это заменяет парадигму рабочей области новым подходом меток.

  • Потрясающий динамический менеджер окон для X11. Это поддерживает управление окнами мозаичного размещения с расширенной клавиатурой, мышью, и это scriptable в Lua. Это включает много дополнений, которые могут сделать это очень мощным. Это заменяет парадигму рабочей области новым подходом мозаичного размещения ненакладывающихся окон.

3
27.12.2014, 00:42
2 ответа

Вы должны избегать поиска в целевой каталоге. Итак, вы можете добавить ! -Path $ target_dir Как, например:

find . -name '*.template' ! -path "*3DBGB_run/*" -exec mv -it ./3DBGB_run {} \+
3
27.01.2020, 21:16

Следует избегать поиска в целевом каталоге. Таким образом, вы можете добавить ! -path $ TARGET _ DIR как например:

find . -name '*.template' ! -path "*3DBGB_run/*" -exec mv -it ./3DBGB_run {} \+
-121-102790-

Я боролся с той же проблемой. Для работы поиска NetBIOS отредактируйте строку /etc/nsswitch.conf и добавьте «wins» в строку «hosts:».

Пример:

hosts: files dns wins

Затем отредактируйте файл /etc/samba/smb.conf и добавьте/отредактируйте строку wins server = , чтобы добавить WINS-сервер. К вашему сведению, Samba не будет работать как сервер и клиент, поэтому, если у вас есть wins support = yes , вам потребуется отключить его или настроить для работы с OpenConnect.

-121--61388-

find находит ваши файлы дважды: в том месте, где они начинались, и в котором вы их перенесли. Это означает, что он в конечном итоге работает:

mv -i 3DBGB_run/x.template 3DBGB_run/x.template

и создает ошибку, которую вы видите.

find видит файлы «live» по мере их появления - он не создает список заранее, а затем выполняет команду для всех элементов списка. Порядок, в котором он просматривает файлы и каталоги, не определен (вероятно, он будет получен из файловой системы), поэтому это произойдет для каждого файла, проверенного перед тем, как каталог будет перемещен в.

Поскольку find не знает, что вы делаете в -exec , он не может компенсировать это. Вы можете сделать несколько вещей об этом:

  1. Исключить каталоги из космоса поиска: найти. -name '* .template' -path. «/3DBGB _ run »-prune -o -exec mv -i {} ./3DBGB_run\; . Часть -path соответствует каталогу, в который вы перемещаете вещи, а часть -prune затем исключает это дерево из рекурсии. -o вызывает выполнение остальной части команды (исходная команда -exec ). Команда никогда не выполняется для файлов в каталоге. (Это явный пример в руководстве GNU найти )
  2. Создать список перед перемещением. В некоторых случаях это может быть лучше, но если имена файлов содержат места или другие символы IFS , то это не так удачно. Если это не применимо, что-то вроде:

     files = $ (find. -name '* .template')
    mv «$ {files [@]}» 3DBGB_run
    

    также будет работать.


При использовании find -exec команда завершается на + вместо ; заставляет find выполнять минимальное количество команд, собирая несколько аргументов в каждом выполнении, что является более эффективным. Иногда это не подходит для конкретной команды, но здесь было бы хорошо. Если это одноразовая команда, это не имеет значения, но если вы выполняете ее много, то сохранение процессов сэкономит время.

2
27.01.2020, 21:16

Теги

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