Учитывая следующую команду:
curl http://anysite.com/tarball.tar.gz | tar xz
Как мне перейти в каталог, созданный tar
?
1 ответ
Учитывая эту команду и не имея возможности доверять тому, что вы сделали это в пустом рабочем каталоге, ответом будет « Вы этого не делаете ». У тарболов может быть любое количество файлов или каталогов, названных как угодно, на своем корневом уровне.
Альтернативой может быть что-то вроде этого:
mkdir temp && curl http://anysite.com/tarball.tar.gz | tar xzC temp && cd temp && cd *
Таким образом , вы делаете новый каталог, рассказывающий tar
, чтобы распаковать архив в него, а затем cd
- диск ать в ней. Этот последний cd *
будет работать, если тарбол содержит только один элемент верхнего уровня, и это был каталог. Редактировать: Он также будет "работать", если первый элемент *
соответствует вашему временному каталогу в каталоге, даже если есть другие каталоги или файлы, вышедшие из верхнего уровня тарбола. Это может не соответствовать определению "работа", которое вы ищете. Если первый элемент, которому соответствует *
не является каталогом, вы получите сообщение об ошибке для этой части команды.