Pregunta

Actualmente estoy usando el siguiente comando para cargar el contenido de mi sitio:

scp -r web/* user@site.com:site.com/

Esto funciona muy bien excepto que el archivo .htaccess no se envía.Presumiblemente, esto se debe a que está oculto.

Intenté agregar una segunda línea para enviar el archivo explícitamente:

scp -r web/.htaccess user@site.com:site.com/.htaccess

Esto funciona muy bien excepto que ahora tengo que ingresar mi contraseña dos veces.

¿Alguna idea sobre cómo hacer que esto se implemente con solo 1 o 0 entradas de mi contraseña?

¿Fue útil?

Solución

Simplemente combine los dos comandos:

scp -r web/* web/.htaccess user@site.com:site.com/

Si desea 0 entradas de su contraseña, puede configurar autenticación de clave pública para ssh/scp.

Otros consejos

Alguna información de fondo:el * el comodín no coincide con los llamados "archivos de puntos" (es decir,archivos cuyo nombre comienza con un punto).

Algunos shells le permiten configurar una opción para que voluntad coincidir con archivos de puntos, sin embargo, hacer eso requiere mucho dolor:ahora * también coincidirá . (el directorio actual) y .. (el directorio principal), que normalmente no es lo que se pretende y puede resultar bastante sorprendente.(rm -rf * eliminar el directorio principal probablemente no sea la mejor manera de comenzar el día...)

Una advertencia: no intente hacer coincidir archivos con puntos (como .htaccess) con .* - esto también coincide inconvenientemente .., y resultaría en la copia de todos los archivos en la ruta al directorio raíz.Hice esto una vez (con rm, ¡nada menos!) y tuve que reconstruir el servidor porque me había metido con /var.

@jwmittag:

Acabo de hacer una prueba en Ubuntu y .* coincide cuando uso cp.He aquí un ejemplo:

root@krash:/# mkdir a
root@krash:/# mkdir b
root@krash:/# mkdir a/c
root@krash:/# touch a/d
root@krash:/# touch a/c/e
root@krash:/# cp -r a/c/.* b
cp: will not create hard link `b/c' to directory `b/.'
root@krash:/# ls b
d  e

Si .* no emparejaron .., entonces d no debería estar en b.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top