Eu tenho um .bash_aliases
arquivo que uso há muito tempo. Hoje adicionei alguns comandos que são divididos em múltiplas linhas (usando \
).
Desde que fiz isso, não consigo source
recarregar o arquivo. Quando eu faço isso fica preso. Ele simplesmente fica lá, com um cursor piscando em uma nova linha, e não me leva de volta ao prompt de comando.
Executar inicialmente o source
comando retornaria o seguinte erro (que eu não tinha antes de adicionar os comandos multilinhas)
-bash: alias: date: not found
-bash: alias: +%Y-%m-%d-%H.%M.%S: not found
Então mudei a linha:
/home/waiheke26/sites/www.waihekehoney.co.nz/backups/wp-files-$(date +%Y-%m-%d-%H.%M.%S).tar.gz \
para
'/home/waiheke26/sites/www.waihekehoney.co.nz/backups/wp-files-$(date +%Y-%m-%d-%H.%M.%S).tar.gz' \
Isso interrompeu esse erro.
Mas agora, quando eu executo, source ~/.bash_aliases
ele fica parado com um cursor de descarga.
ATUALIZAR:
Adicionei uma falta "
conforme observado por Spiff nos comentários. Mas agora recebo estes erros ao fazer uma fonte no arquivo:
-bash: alias: backup: not found
-bash: alias: OK || echo Database: not found
-bash: alias: backup: not found
-bash: alias: failed: not found
Examinei o arquivo e não consigo ver qual é o problema.
PERGUNTA: O que está fazendo com que este .bash_aliases
arquivo não seja atualizado quando originado?
Aqui está o arquivo (nome de domínio removido)
alias bashupdate="source ~/.bash_aliases";
alias aliases="cat ~/.bash_aliases";
alias wphome="cd /home/waiheke26/sites/www.waihekehoney.co.nz/public";
alias wpsyncfolder="cd /waiheke26/sites/www.waihekehoney.co.nz/backupsync";
alias wpsync="wphome && rsync -va --exclude 'cache' \
--exclude 'wp-content/uploads' \
--exclude 'wp-content/cache' \
--exclude 'wp-content/uploads' \
--exclude 'wp-content/backups' \
--exclude 'wp-content/envato-backups' \
/home/waiheke26/sites/www.waihekehoney.co.nz/public/ \
/home/waiheke26/sites/www.waihekehoney.co.nz/backupsync/public/ --delete";
alias wptar="wpsyncfolder && tar -zcf \
'/home/waiheke26/sites/www.waihekehoney.co.nz/backups/wp-files-$(date +%Y-%m-%d-%H.%M.%S).tar.gz' \
. \
&& echo 'File backup OK' || echo 'File backup failed'";
alias wpbackup="dbbackup && wpsync && wptar && cleanbackups";
# alias wpbackup="wphome && tar --exclude='./wp-content/uploads' --exclude='./wp-content/cache' --exclude ='./cache' --exclude='./wp-content/backups' --exclude='./wp-snapshots' --exclude='./wp-content/envato-backups' -zcf /home/waiheke26/sites/www.waihekehoney.co.nz/backups/wp-files-$(date +%Y-%m-%d-%H.%M.%S).tar.gz . && echo "File backup OK" || echo "File backup failed"';
alias dbbackup="wphome && wp db export --add-drop-table && mv *.sql /home/waiheke26/sites/www.waihekehoney.co.nz/backups/ && echo "Database backup OK" || echo "Database backup failed"";
alias cleanbackups="find /home/waiheke26/sites/www.waihekehoney.co.nz/backups -mtime +7 -delete";
alias cleanbackups-test="find /home/waiheke26/sites/www.waihekehoney.co.nz/backups -mtime +7 -print";
alias wpdbbackup="wpbackup && dbbackup && cleanbackups";
Responder1
As duas questões foram as seguintes:
- Uma das definições de alias estava faltando, fechando aspas duplas. (conforme observado por Spiff nos comentários).
- Eu mudei algumas aspas duplas e simples enquanto tentava corrigir o problema. Isso resultou em aspas duplas aninhadas dentro de aspas duplas, o que gerou os erros observados noATUALIZARna pergunta. Eu precisava escapar dessas aspas duplas aninhadas ou alterá-las para aspas simples. (conforme observado por Spiff nos comentários).