Come posso utilizzare `scp` per la distribuzione di un sito web.htaccess file?
-
09-06-2019 - |
Domanda
Attualmente sto usando il seguente comando per caricare il mio sito contenuto:
scp -r web/* user@site.com:site.com/
Questo funziona alla grande, tranne che l' .htaccess file non viene inviato.Presumibilmente, questo è perché è nascosto.
Ho provato ad aggiungere una seconda linea di inviare il file esplicitamente:
scp -r web/.htaccess user@site.com:site.com/.htaccess
Questo funziona alla grande, ma ora devo inserire la password due volte.
Qualche idea su come fare questa distribuzione con solo 1 o 0 voci della mia password?
Soluzione
Basta combinare i due comandi:
scp -r web/* web/.htaccess user@site.com:site.com/
Se volete 0 voci della password, è possibile impostare l'autenticazione a chiave pubblica per ssh/scp.
Altri suggerimenti
Alcune informazioni di base:il *
jolly non corrisponde cosiddetto "dot-files" (cioèi file il cui nome inizia con un punto).
Alcune conchiglie consentono di impostare un'opzione, in modo che sarà partita dot-file, tuttavia, che chiede un sacco di dolore:ora *
sarà anche la partita .
(la directory corrente) e ..
(directory principale), che di solito non è ciò che è previsto e può essere molto sorprendente!(rm -rf *
eliminare la directory principale è probabilmente il modo migliore per iniziare una giornata ...)
Una parola di cautela - non tentare di partita costellata di file (come .htaccess
) con .*
- questo è scomodo anche le partite ..
, e comporterebbe la copia di tutti i file sul percorso della directory principale.L'ho fatto una volta (con rm
, non meno!) e ho dovuto ricostruire il server perché avevo pasticciato con /var
.
@jwmittag:
Ho appena fatto una prova su Ubuntu e .*
le partite quando uso cp
.Ecco un esempio:
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
Se .*
non corrispondono ..
, poi d
non dovrebbe essere in b
.