exelens 12.04.2009 10:06

Tips & tricksБыстрый способ удалять из консоли несколько директорий за 1 раз.

Уверен, что многие из нас собирают разную информацию и раскладывают по директориям (музыка, книжки, фотки).



Если у вас есть каталог, содержащий десять подкаталогов, и вы хотите удалить 4 из них, самый медленный способ -это вводить каждый раз команду.



rm -rf /home/ololo/lolo

rm -rf /home/ololo/boro

rm -rf /home/ololo/goro

rm -rf /home/ololo/yaolen

....



Согласитесь, нудно и долго.



Есть другой способ - использовать скобки.

rm -rf /home/ololo/{lolo,boro,goro,yaolen}



Быстрее?


Тэги: bash Linux
+ 8 -
Похожие Поделиться

pluton 12.04.2009 10:16 #
Есть другой способ, использовать скобки.
rm -rf /home/ololo/{lolo, boro, goro, yaolen}

только, афаик, в именах не должно быть пробелов, они задаются как есть, и подставляются по одному в команду:
rm -rf /home/ololo/{lolo,boro,goro,yaolen}

зы. оч удобно это юзать при компиляции простых прог:
$ g++ -o prog{,.cpp}
команда разворачивается в такую:
$ g++ -o prog prog.cpp
exelens 12.04.2009 11:55 #
не должно быть пробелов
fixed
nvbn 12.04.2009 17:37 #
Я буду ответственно относиться к безопасности своих приложений.
Minoru 12.04.2009 18:31 #
Если бы ты внимательно прочёл пример команды, которую дал pluton, ты бы понял, что он просто неверно выразился. Имеются в виду пробелы после запятой в фигурных скобках. Первоначально в посте было написано следующее:
rm -rf /home/ololo/{lolo, boro, goro, yaolen}
, то есть после запятых стояли пробелы. Такая строка башем не разворачивается вообще, то есть остаётся такой, какой была (не веришь? замени rm -rf на echo и посмотри на вывод).
Minoru 12.04.2009 11:48 #
Да, знаем такой приёмчик. Реально удобно, причём не только при удалении директорий, но и при их создании, перемещении и т.д. Также такую штуковину можно юзать в aptitude — то есть что-то вроде aptitude install prog prog-doc записывается как aptitude install prog{,-doc}

Маленькие замечания:
вы хотите удалить, 4 из них

Лишняя запятая.

самый медленный способ: вводить каждый раз команду.

s/:/ — это/ (вместо двоеточия тире и «это»)
Вместо точки в конце предложения надо поставить двоеточие, так как дальше по тексту идут собственно команды.

Есть другой способ, использовать скобки.

s/,/ —/
s/./:/

Но самое главное — это убрать пробелы после запятых в фигурных скобках (об этом писал pluton).
exelens 12.04.2009 11:55 #
fixed
binary 13.04.2009 01:16 #
Быстрее?

Не особо. Если автодополнение настроить для случая со скобками - тогда да, быстрее, что и хотелось бы дополнительно увидеть в посте.
exelens 13.04.2009 07:34 #
Предлагаю самостоятельно изучить все доп функции не описанные в посте.