1.Não é necessário definir árvores de diretórios individualmente:
Caminho ruim:
~ $ mkdir tmp
~ $ cd tmp
~/tmp $ mkdir a
~/tmp $ cd a
~/tmp/a $ mkdir b
~/tmp/a $ cd b
~/tmp/a/b/ $ mkdir c
~/tmp/a/b/ $ cd c
~/tmp/a/b/c $
Boa forma:
~ $ mkdir -p tmp/a/b/c
2. Arquivamento:
Às vezes eu vi pessoas moverem qualquer tar como a.tar para outro diretório que é o diretório onde eles querem extrair o arquivo. Mas isso não é necessário, pois a opção -C pode ser usada aqui para especificar o diretório para essa finalidade.
~ $ tar xvf -C tmp/a/b/c newarc.tar.gz
3. Importância dos operadores de controle:
Suponha que haja dois comandos, mas apenas se o primeiro comando for executado e, em seguida, o segundo deve ser executado, caso contrário, o segundo comando teria sido executado por nada. Então, aqui um comando deve ser executado, somente se o outro comando retornar um status de saída zero.
Exemplo:
~ $ cd tmp/a/b/c && tar xvf ~/archive.tar
No exemplo acima, o conteúdo do arquivo precisa ser extraído no diretório: c, mas somente se o diretório existir. Se o diretório não existir, o comando tar não será executado, portanto, nada será extraído. / p>