Я новичок в оболочке, и я хотел бы узнать, однако, это кажется немного слишком сложным для понимания:Что означает {} в "xargs -I {} unrar x {}"?
find . \(-name *.rar \) | xargs -I {} unrar x {}
Можете ли вы объяснить, шаг за шагом, что это делает. Я знаю, что он попадает в папки и находит все найденные файлы .rar
, а затем он связывает файлы, которые он находит во второй части команды, используя символ |
. Однако, я не понимаю часть xargs -I {} unrar x {}
и команду {}
в частности. Я знаю, что unrar
извлекает архив.
Я думаю, что 'человек xargs' может помочь вам. – ArtOfWarfare
См. Пошаговое объяснение на [explainhell.com] (http://explainshell.com/explain?cmd=find+.+%5C%28+-name+*.rar+%5C%29+%7C+xargs+- I +% 7B% 7D + unrar + x +% 7B% 7D) –
Это тоже довольно неоправданно ужасно. Нет смысла писать это, чтобы использовать 'xargs' вообще, учитывая' find -exec', а использование xargs вводит ошибки (посмотрите, что произойдет, если у вас есть rar-файл с пробелом в его имени. –