Resolvería el problema tar
y la transparencia de la tubería ssh
. Un ejemplo se puede ver a continuación, se nombra la PC remota bar
. Antes de la prueba, creé tres archivos vacíos /tmp/foo
ejecutándolos ssh bar 'mkdir /tmp/foo ; touch /tmp/foo/{a,b,c}'
.
$ ssh bar 'cd /tmp/foo ; ls | sort -r | tar -cT -' | tar -xv
c
b
a
$ ls -l a b c
-rw-r--r-- 1 dnet dnet 0 nov 29 17:07 a
-rw-r--r-- 1 dnet dnet 0 nov 29 17:07 b
-rw-r--r-- 1 dnet dnet 0 nov 29 17:07 c
El -T
indicador de tar
hace que lea los nombres de archivo para empacar desde el siguiente parámetro, y -
significa la entrada estándar. Ahora solo necesita canalizar el nombre de los archivos, que pueden provenir ls
(como en el ejemplo) o find
para tareas más complicadas. Con esta configuración, puede usar sort
para indicar el orden exacto en que los archivos se transmitirán a través de SSH (en este caso, los -r
archivos ordenados en orden alfabético inverso). El -v
solamente se añade a la final, el desembalaje tar
, de manera que el orden es visible.