Pregunta

¿Hay alguna manera una secuencia de comandos se puede hacer que las copias de los archivos de un coche Unix en una unidad de Windows?

¿Fue útil?

Solución

Lo hago todo el tiempo de forma manual utilizando la copia de seguridad ( SCP ). SCP ya viene instalado en la mayoría de las máquinas Unix. En mi PC, he instalado masilla que es una aplicación de terminal segura para windows y también contiene una utilidad de copia de seguridad.

Al hacer la copia de seguridad de forma manual desde la línea de comandos de Windows, que ponga su nombre de usuario Unix en el comando de línea de comandos, pero entonces usted tiene que escribir su contraseña en el indicador, por lo que es interactiva. Pero también he pensado en hacerlo desde un script o un archivo por lotes. En ese caso, tendrá que crear e instalar claves privadas y públicas en las máquinas adecuadas. He creado las teclas correspondientes, los instalé en ambas máquinas Windows y Unix y luego lleva a cabo manualmente la copia de seguridad de Windows de línea de comandos de nuevo y lo hizo no pedirme mis datos ese momento. Así que esta es una forma que puede realizar la tarea. Estoy seguro de que hay muchas otras maneras, sin embargo.

Otros consejos

Sí, siempre y cuando el sistema operativo se está ejecutando la secuencia de comandos puede leer en la unidad de Unix y escribir en la unidad de Windows. Dado que este es VBScript Tagged, voy a suponer que se está ejecutando en Windows por lo que puede que desee ver en algo así como este para conseguir el acceso a los sistemas de ficheros Unix para Windows (aunque eso es un conductor ext Linux). Entonces es sólo ejecuta una función de copia estándar para completar su tarea.

Dado que usted tiene una etiqueta de Samba, estás hablando montar un recurso compartido de red de una máquina Unix en su máquina de Windows?

Si es así, es sólo tratados como una unidad de red normal y que sería capaz de copiar cualquier cosa que tenía los permisos a través de la acción.

Me gustaría utilizar esperar herramienta .

Este es un ejemplo, cómo cargar

  • /local/path/to/file

a

  • \\HOST\SHARE\remote\path\to\file

autenticación con domain\user usando password contraseña:

expect <<<EOF
set timeout 10
spawn smbclient //HOST/SHARE "-Udomain\\user%password"
expect {
  "smb: \\\\\\\\>" {
    send "cd /remote/path/to\r"
    expect {
      "NT_STATUS_OBJECT_NAME_NOT_FOUND" {exit 1}
      "smb: *>"                         {
        set timeout -1
        send "put /local/path/to/file file\r"
        expect {
          "putting file " {
            expect "smb: *>" {exit 0}
          }
          "smb: *>" {exit 1}
        }
      }
    }
  }
}
# Timeout
exit 1
EOF
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top