Copie apenas os detalhes do arquivo (nome do arquivo, tamanho, hora) da máquina remota no unix

3

como podemos copiar apenas os detalhes do arquivo (nome do arquivo, tamanho, hora) de uma máquina remota no Unix?

Por exemplo: Eu tenho um diretório ( /opt/apache/…/webapps/Context ) colocado em uma máquina remota. Agora quero copiar apenas os metadados (tamanho, hora, nome do arquivo) dos arquivos que residem nesse diretório e seus subdiretórios para minha máquina local, algo como root root 1150 Dec 30 12:11 file.txt .

    
por Sak 30.12.2014 / 07:55

1 resposta

3

Se você deseja obter uma lista detalhada dos arquivos no diretório opt/apache../webapps/Context na máquina remota remotemachine , use:

ssh remotemachine  "ls -l /opt/apache../webapps/Context"

Se você quiser pesquisar recursivamente para todos os arquivos nesse diretório e todos os seus subdiretórios , use:

ssh remotemachine  "find /opt/apache../webapps/Context -type f -exec ls -l {} +"

Como funciona

  • ssh remotemachine command

    Isso executa command on remotemachine usando secure-shell ( ssh ). command pode ser qualquer comando de sua escolha. Nos dois exemplos acima, usei:

  • ls -l /opt/apache../webapps/Context

    Isso exibe a listagem do diretório /opt/apache../webapps/Context no formato "longo". Você pode usar qualquer uma das opções de ls para selecionar o formato ou a classificação que preferir. Veja man ls .

  • find /opt/apache../webapps/Context -type f -exec ls -l {} +

    Isso usa find para pesquisar recursivamente por meio de subdiretórios. Os arquivos encontrados são novamente exibidos com ls . -type f informa find para mostrar somente arquivos regulares e não diretórios. find tem muitas opções que você pode usar para selecionar apenas os arquivos que lhe interessam. Veja man find .

Mais opções

Se você quiser salvar a saída em um arquivo, use redirecionamento . Por exemplo:

ssh remotemachine  "ls -l /opt/apache../webapps/Context" >outputfile

Se você deseja que ambos exibam a saída na tela e também salvem em um arquivo, use tee :

ssh remotemachine  "ls -l /opt/apache../webapps/Context" | tee outputfile
    
por 30.12.2014 / 08:57