Não consigo encontrar o diretório padrão para o qual os arquivos .tar são extraídos. SO - Ubuntu 16 4. Por favor, não responda: a mesma pasta do arquivo tar, porque não está lá (e todos os tutoriais ou perguntas que encontrei usam essa resposta). Ajuda por favor ?!
Responder1
Quando a imagem é compactada, sua estrutura de diretórios pode ser preservada. Para ver a estrutura de diretórios de a tar
sem desativá tar
-la:
tar -ztvf my-data.tar.gz
O -t
(abreviação de --list
):
Liste o conteúdo de um arquivo. Os argumentos são opcionais. Quando fornecidos, eles especificam os nomes dos membros a serem listados.
Se não estiver no mesmo diretório em que o tar
arquivo foi extraído, ele estará em um subdiretório desse diretório, a menos que -C
ou --directory
tenha sido especificado:
-C, --directory=DIR Change to DIR before performing any operations. This option is order-sensitive, i.e. it affects all options that follow.
Tente find . -name '*expected file*'
procurá-lo no diretório atual.
Responder2
É o diretório que está codificado no arquivo, a menos que seja alterado, por exemplo, -C
durante a extração. Você sempre pode obter uma lista dos caminhos dos arquivos no arquivo com
tar -t -f archive.tar
Os caminhos armazenados no arquivo sãoquase semprecaminhos relativos (a menos que -P
tenham sido usados ao criar o arquivo), o que significa que o conteúdo do arquivo será descompactado como uma hierarquia de arquivos no diretório atual (a menos que seja alterado com -C
).
Responder3
O tar
comando extrai arquivos em seudiretório de trabalho atual. Quando você executa tar
a partir de um shell, esse é o diretório de trabalho atual do shell, aquele definido pelo cd
comando, exibido pelo pwd
comando e, às vezes, exibido no prompt. O diretório de extração pode ser alterado com a -C
opção.
Muitos arquivos tar possuem todos os arquivos dentro de um único diretório de nível superior (relativo ao diretório de extração), geralmente com um nome semelhante ao do arquivo tar. Neste caso, todos os arquivos extraídos estão nesse diretório. Mas isso não é uma obrigação, existem muitos arquivos tar que contêm vários diretórios e arquivos de nível superior. Por outro lado, tar
no Ubuntu e na maioria dos outros sistemas não extrairá nenhum arquivo fora do diretório de extração.
O diretório de extração não depende da localização do arquivo tar. (Isso é para o tar
comando e, geralmente, para a maioria dos programas de manipulação de arquivo de linha de comando. Os programas GUI podem se comportar de maneira diferente.) O diretório de extração é o local do arquivo tar se o argumento do nome do arquivo tar passado para tar
não contém nenhuma parte do diretório, mas em geral, poderia estar em qualquer lugar.
Se você não se lembra qual era o diretório atual quando executou o tar
comando, verifique o histórico do shell (no bash, pressione Ctrl+ Re digite tar
; pressione Ctrl+ Rnovamente para repetir a pesquisa). Se você encontrar um caminho relativo para o arquivo (por exemplo, tar xf subdir/archive.tar
), poderá descobrir qual era o diretório atual (com este exemplo, era o pai do diretório que contém o arquivo). É claro que isso nem sempre ajuda, por exemplo, se o caminho for absoluto.
Se não conseguir encontrar os arquivos, você pode tentar procurar os arquivos que foram criados ou modificados (mais precisamente, qualquer alteração feita no arquivo ou em suas propriedades) no intervalo de tempo certo, com o comandofind
e sua opção -ctime
ou -cmin
, por exemplo
find ~ -cmin +30 -cmin -61
para procurar arquivos que foram alterados entre 30 e 60 minutos atrás em seu diretório inicial. Em vez de -cmin
e -ctime
você pode usar -cnewer somefile
para comparar o tempo de alteração com o do arquivo somefile
. Você pode adicionar -name foo
no final do find
comando para restringir um nome de arquivo específico contido no arquivo (sem qualquer parte do diretório).
Se você correu tar
no dia anterior ou antes do dialocalizarbanco de dados pode informar onde está seu arquivo. Por exemplo, se o arquivo contiver um arquivo some/directory/myfile.txt
, ele locate some/directory/myfile.txt
informará onde esse arquivo pode ser encontrado.