web-dev-qa-db-fra.com

Existe-t-il un moyen de faire un "ls" distant comme "scp" fait une copie à distance?

Existe-t-il un moyen de faire un "ls" distant comme "scp" fait une copie distante dans un shell Linux standard?

57
Yazz.com

Vous pouvez toujours faire ceci:

ssh user@Host ls -l /some/directory

Cela enverra SSH à l'hôte, exécutera ls, vous renverra la sortie et se déconnectera immédiatement.

80
Corey S.

Pour répertorier tous les fichiers d'un répertoire:

rsync Host.name.com:directory/path/'*'

Pour quelque chose comme find directory/path -ls

rsync -r Host.name.com:directory/path
14
Black Rock Onyx

Pour tous ceux qui viennent via google à cette question car ils recherchent un moyen de lister les fichiers distants mais ne peuvent pas accéder au serveur distant via ssh (cas courant pour les serveurs de sauvegarde), vous pouvez utiliser 'sftp'.

Exemple:

sftp [email protected]
ls
cd somedir
exit

Démarrez une session interactive dans un répertoire distant spécifique:

sftp [user@]Host[:dir]
6
tobltobs

Oui. SSH et faites un ls:

ssh Host ls /path

Vous pouvez facilement l'écrire pour être plus flexible ou utiliser la syntaxe Host: path scp uses.

4
Andrew M.

Je trouve que mon utilisation la plus fréquente est d'obtenir le résultat ls, une simple liste de fichiers sans toutes les autorisations et dates et autres, et de le conserver dans un fichier local.

{ ssh [email protected] "cd /dir/of/interest; ls -1f *.txt;" } > /home/me/listoffiles.txt

Vous pouvez exécuter tout ce que vous voulez dans les guillemets. Toutes les sorties se retrouvent dans votre fichier texte local. Ou si vous voulez exécuter un gros script méchant sur le serveur et capturer toute sa sortie, même des erreurs:

{ ssh [email protected] <script.remote.sh } > /home/me/output.log 2>/home/me/output.err
1
mightypile