Как извлечь несколько файлов одновременно?

У меня есть несколько RAR-файлов, которые хранятся примерно так:

/torrents/televisionshowS01E0$X/nameoftelevisionshow.rar

где $X - переменная ={0,1,2,...,12}

Я хотел бы извлечь их с помощью одной команды в один выходной каталог (/publicshare/).

Вот что у меня так далеко:

for i in find /torrents/televisionshowS01*/ -name *.rar; do unrar x "$i" /publicshare/;done

но я получаю следующий результат:

Cannot open /torrents/televisionshowS01E01/.rar
No such file or directory
No files to extract

Однако find /torrents/levisionshowS01*/ -name *.rar возвращает правильные пути.

1 ответ

О, глядя на bashscript других людей, я понял, что у меня должны быть галочки вокруг команды find. Вот так,

for i in `find /torrents/televisionshowS01*/ -name *.rar`; do unrar x "$i" /publicshare/; done

и затем команда функционировала так, как я хотел. Хотя, я все еще не уверен, ПОЧЕМУ, точно. Я предполагаю, что они работают так же, как скобки в математике. Очевидно, на этот раз это сработало, но в качестве хорошей практики я должен был поставить в тупик unrar x "$i" /publicshare/?

Спасибо

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