Как извлечь несколько файлов одновременно?
У меня есть несколько 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/
?
Спасибо