Encontrei este link sobre como abrir o tgz em uma única etapa .
gzip -dc target.tar.gz | tar xf -
O que significa '-'?
command-line
tar
ripper234
fonte
fonte
tar xfz target.tar.gz
e para bziptar xfj target.tar.bz2
Respostas:
É uma convenção comum usar
-
um argumento de nome de arquivo para significarstdin
oustdout
;tar
segue a mesma convenção. Na página do manual:fonte
-
significa para ele. Stdin / stdout é de longe o significado mais comum, mas existem outros. Por exemplo, para algumas versõesenv
significa "começar com um ambiente vazio".Outra convenção é usar '-' para indicar o final dos sinalizadores e o início dos nomes dos arquivos. Esse comportamento está embutido no getopt (3) no RedHat 4, pelo menos. Não consigo encontrar uma página de manual do Red Hat que use '-' para indicar o fim dos argumentos, todos parecem usar '-' para fazer isso. A página de manual awk possui '-' nesse contexto, portanto, talvez apenas os comandos antigos do Unix ou Solaris da "herança" usem '-' como um argumento - separador de nomes de arquivos.
fonte
--
sinaliza o fim das opções, então tudo o que vem depois é um operando.-
não é uma opção, portanto, e tudo o que vem depois é um operando. Esse é o comportamento padrão . Para muitos comandos, comotar
, o operando-
significa entrada ou saída padrão . Em muitas conchas,set - -a
é equivalente aset -- -a
, e em algumas conchas Bourne antigasset - -a
era a única forma aceita, mas essa era uma exceção com oset
built-in.--
para separar opções de argumentos.