
Ejemplo: una vez que el add-apt-repository
proceso haya finalizado, ejecútelo inmediatamente apt-get update
, sin tener que ingresar el comando manualmente.
¿Hay alguna forma de hacer esto? ¿Es posible establecer dicha combinación sin el uso de la sudo
contraseña? (aunque no me importa de ninguna manera)
Estoy preguntando lo siguiente:¿Cómo puedo vincular dos comandos entre sí, de modo que cada vez que ejecute un comando en particular,siempreejecuta el comando vinculado después de él?
Respuesta1
Como normalmente,
sudo bash -c "command1; command2"
Si desea ejecutar el comando2 solo después de que el comando1 se haya completado exitosamente, puede usar as &&
en lugar de ;
.
sudo bash -c "command1 && command2"
Usaré el siguiente comando para tu ejemplo.
sudo bash -c "add-apt-repository <repo> && apt-get update"
Respuesta2
Hay varios problemas al conectarse a esto con un alias o una función bash simple, pero puede escribir un pequeño contenedor para un comando y pegarlo en /usr/local/bin
el que tenga prioridad en su ruta.
Esto es unpequeño truco para crear un script y modificarlo al mismo tiempo.
Volcará un script contenedor ejecutable en formato /usr/local/bin/add-apt-repository
.
sudo install -b -m 755 /dev/stdin /usr/local/bin/add-apt-repository << 'EOF'
#!/bin/sh
/usr/bin/add-apt-repository "$@"
apt-get update
EOF
Para revertir esto, simplemente elimine /usr/local/bin/add-apt-repository
.
Si desea hacer algo más fructífero (como vincular apt-get install
y apt-get update
así actualizar siempre antes de instalar), solo necesitamos expandir el script para ver los argumentos.
sudo install -b -m 755 /dev/stdin /usr/local/bin/apt-get << 'EOF'
#!/bin/sh
if [ "$1" = "install" ] ; then
/usr/bin/apt-get update
fi
/usr/bin/apt-get "$@"
EOF
Aunque considere que esto ejecutará una actualización antescada apt-get install
llamar. Esto puede parecer útil, pero en la práctica puede resultar muy tedioso.
Respuesta3
Para ejecutar ciertos comandos en una secuencia particular, se utilizan scripts de shell. Todo lo que tienes que hacer es: Abrir la terminal presionando Ctrl+ Alt+ T
Y seguir los pasos:
1. Escribe gedit filename.sh
2. Después de ingresar este comando, se abrirá un editor de texto, donde podrás escribir los comandos requeridos, uno en cada línea. Por ejemplo,sudo add-apt-repository
apt-get update
3. Después de escribir todos los comandos, guarde y salga usando la GUI o presione Ctrl+ Sy Ctrl+ Q.
4. Ahora volverás a la terminal. Ejecute sh filename.sh
en la terminal y sus comandos se ejecutarán, siempre que no haya ningún error en sus comandos.
Además, si inicia sesión desde una cuenta de superusuario (root), no tendrá que escribir sudo
su comando.
Respuesta4
La forma más sencilla de hacerlo es ejecutar:
sudo add-apt-repository <ppa_name> && sudo apt-get update
Si el primer comando finaliza con éxito, se ejecutará el segundo.