Wenn Sie die Details in der Datei nicht unterscheiden müssen, ermitteln Sie einfach den Unterschied zwischen Verzeichnis- und Dateinamen und versuchen Sie Folgendes:
(Hinweis:"SSH-Anmeldung ohne Passwort" muss eingestellt werden, für Details siehe diese URL:http://www.linuxproblem.org/art_9.html)
diff <(ssh [email protected] ls -R /home/admin) <(ls -R /home/admin)
Sie können das Remote-Verzeichnis über sshfs
mounten , dann können Sie diff -r
verwenden um die beiden Verzeichnisse nach Belieben zu vergleichen.
Alternativ könnten Sie auch find
ausführen Befehle auf beiden Maschinen, um die Dateibäume (z. B. Dateinamen, Größen und Daten) auszudrucken und dann die Ausgaben beider mit diff
zu vergleichen . Dies würde natürlich keine Dateiinhalte vergleichen:
diff <(ssh host find /home/admin -printf '"%8s %P\n"') \
<(find /home/admin -printf '%8s %P\n')
Beachten Sie die doppelten Anführungszeichen des printf-Format-Strings in ssh
Anruf. Eine Schicht wird durch ssh
entfernt Relais.
Versuchen Sie, "rsync" mit der Option "-n" zu verwenden, was nur einen "Trockenlauf" durchführt und Ihnen sagt, was es tun würde.