... se você tiver acesso real ao shell. Alguns sistemas têm um shell especial que aceita apenas chamadas scpe certas rsync, talvez sftptambém, e é isso.
glglgl
como você alias isso para, digamos, "rls"?
Morsa, o gato
2
@WalrustheCat alias rls="ssh user@host ls -l"Reinicie seu shell e rls /some/directorydeve funcionar.
Chishaku #
O único problema com isso é que o arquivo não encontrado retorna um código de erro, quando minha razão para fazer isso é precisamente o motivo pelo qual desejo chamar ls.
Steve Cohen
Não segue @SteveCohen. Você está querendo o código de erro do sl remoto? Se sim, $? contém logo após a execução do comando. (por exemplo, retorna 2 se eu executar isso [local ou remotamente] em um arquivo que não foi encontrado) #
Se o rsync não estiver instalado no host, você terá algo parecido bash: rsync: command not found. Eu acho que isso implica que ele está usando SSH em segundo plano?
Mkfearnley
Observe que o formato é semelhante a ls -l. No meu sistema, não parece haver uma opção para listar apenas os arquivos.
317 Jonathan
6
Para todos que chegam pelo google a esta pergunta, porque estão procurando uma maneira de listar arquivos remotos, mas não podem acessar o servidor remoto via ssh (caso comum de servidores de backup), você pode usar o 'sftp'.
Acho que meu uso mais frequente disso é obter o resultado ls, uma lista simples de arquivos sem todas as permissões e datas, e mantê-lo em um arquivo local.
Você pode executar o que quiser dentro das aspas. Toda a saída termina no seu arquivo de texto local. Ou se você deseja executar um grande script desagradável no servidor e capturar toda a sua saída, até erros:
Respostas:
Você sempre pode fazer isso:
Isso fará o SSH para o host, executará ls, enviará a saída de volta para você e será desconectada imediatamente.
fonte
scp
e certasrsync
, talvezsftp
também, e é isso.alias rls="ssh user@host ls -l"
Reinicie seu shell erls /some/directory
deve funcionar.Para listar todos os arquivos em um diretório:
Para algo como find directory / path -ls
fonte
bash: rsync: command not found
. Eu acho que isso implica que ele está usando SSH em segundo plano?ls -l
. No meu sistema, não parece haver uma opção para listar apenas os arquivos.Para todos que chegam pelo google a esta pergunta, porque estão procurando uma maneira de listar arquivos remotos, mas não podem acessar o servidor remoto via ssh (caso comum de servidores de backup), você pode usar o 'sftp'.
Exemplo:
Inicie uma sessão interativa em um diretório remoto específico:
fonte
Sim. SSH e faça um
ls
:Você pode facilmente criar um script para ser mais flexível ou usar a sintaxe host: path
scp
.fonte
Acho que meu uso mais frequente disso é obter o resultado ls, uma lista simples de arquivos sem todas as permissões e datas, e mantê-lo em um arquivo local.
Você pode executar o que quiser dentro das aspas. Toda a saída termina no seu arquivo de texto local. Ou se você deseja executar um grande script desagradável no servidor e capturar toda a sua saída, até erros:
fonte
{ }
não é necessário.