Удалить все inodes BESIDES один под всеми экземплярами dir0 / dir1 UNDER var / www / html, в одной команде

У меня есть каталог var/www/html и под ним есть несколько веб-сайтов (скажем, около 5).

Все 5 веб-сайтов имеют внутренний путь dir0/dir1 .

Как я мог he_IL.mo все inode внутри этого пути (кроме одного inode с именем he_IL.mo ), но в одной команде?

Я спрашиваю об одной команде, так как у меня есть следующий блок из 3 команд, которые работают, но я хотел бы сделать как можно меньше:

 ( find /var/www/html/*/dir0/dir1/ ! -name 'he_IL.mo' -type f -exec rm -f {} + find /var/www/html/*/dir0/dir1/ -type f -exec rm -d {} + find /var/www/html/*/dir0/dir1/ -type f -exec rm -l {} + ) 
  • Если я делаю * вместо f я получаю «Должен содержать только букву».
  • Если я делаю i вместо f , я получаю «Неизвестный аргумент».

  • Как загрузить Linux в режим командной строки вместо графического интерфейса?
  • Как мы можем изменить несколько запущенных аргументов командной строки в терминале Linux?
  • Откройте программу (VLC) и переместите ее на передний план
  • Можно ли отменить команду в оболочке bash?
  • Какова цель опции -I команды xargs?
  • Выполняет ли команда cat возврат файла или содержимого файла?
  • Должно ли сообщение об использовании перейти на stderr или stdout?
  • Почему echo "bar" -n отличается от echo -n "bar"?
  • One Solution collect form web for “Удалить все inodes BESIDES один под всеми экземплярами dir0 / dir1 UNDER var / www / html, в одной команде”

    Способ использования одной команды – удалить из командной -type . Тогда получим:

     find /var/www/html/*/dir0/dir1/ ! -name 'he_IL.mo' -exec rm -f {} + 

    Обратите внимание, что он не будет удалять каталоги и программные he_IL.mo с именем he_IL.mo , но если все в порядке, используйте его.

    Linux и Unix - лучшая ОС в мире.