Adicione vários aliases aos aliases de /etc/bash.bashrc se eles ainda não estiverem lá

-1

É assim que adiciono vários aliases a /etc/bash.bashrc :

cat <<-"BASHRC" >> /etc/bash.bashrc
    alias rss="/etc/init.d/php*-fpm restart && systemctl restart nginx.service"
    alias brc="nano /etc/bash.bashrc"
    alias www="cd /var/www/html"
    alias imb="bash /opt/imb.sh"
    alias nwsm="bash /opt/nwsm.sh"
BASHRC
source /etc/bash.bashrc

Eu sinto que poderia passar o documento e usar outra maneira que também verificaria se os aliases já estão lá, existe uma solução simples para isso?

    
por Arcticooling 11.01.2018 / 05:19

1 resposta

1

Você pode usar grep para verificar se a linha existe, antes de adicioná-la a /etc/bash.bashrc .

#!/bin/bash
cat > /tmp/aliases.tmp << 'BASHRC'
    alias rss='/etc/init.d/php*-fpm restart && systemctl restart nginx.service'
    alias brc='nano /etc/bash.bashrc'
    alias www='cd /var/www/html'
    alias imb='bash /opt/imb.sh'
    alias nwsm='bash /opt/nwsm.sh'
BASHRC
for i in 'cat /tmp/aliases.tmp'; do
    [[ grep "$i" /etc/bash.bashrc ]] || echo "$i" >> /etc/bash.bashrc
rm /tmp/aliases.tmp
source /etc/bash.bashrc
    
por Mukesh Sai Kumar 11.01.2018 / 09:15