Guardar una cadena de varias lineas en un archivo en bash con EOF

Seguramente nos ha pasado en alguna ocasión que tenemos que copiar y pegar texto en linux y no sabemos como guardarlo en un fichero nuevo del tiron.

Para este cometido podemos utilizar EOF, que nos permite guardar todo el contenido que vayamos pegando por pantalla encosertado entre las cadenas EOF.
A continuación pongo un ejemplo de como pegando por pantalla las siguientes lineas creamos un scrips que una vez ejecutado nos indica la fecha (date) y el espacio libre en disco (df -h).
cat <<EOF > fecha-espacio.sh
#!/bin/bash
date
df -h
EOF
/bin/bash/ print.sh
Wed Nov 10 10:23:55 CET 2021
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             2.0G 1002M  887M  54% /


Como añadir la variable MySQL al $PATH para resolver el error: “mysql: command not found”

En sistemas Linux nunca tiramos de rutas absolutas u utilizamos las variables del sistema como en el caso del cliente mysql.

Sera costumbre de instalar todo con apt o yum, etc.

Pero bueno siempre hay casoso especiales, como tener que compilar mysql porque lo pide tu jefe o que en un caso de muñonismo hayas borrado la variable del path.

En cualquier caso si lanzas el comando mysql y te muestra el error “mysql: command not found” no hay que preocuparse porque hay fácil solución.

Basta con añadir la ruta del mysql a la variable del sistema con:

export PATH=${PATH}/usr/local/mysql/bin/

en este caso probamos el comando mysql y si nos funciona lo siguente es añadirlo permanente en el fichero . bash_profile del usuario que queremos que ejecute el comando

echo 'export PATH="/usr/local/mysql/bin:$PATH"' >> ~/.bash_profile

Nunca me acuerdo del barrabin barrabash #!/bin/bash

Bienvenidos a mi blog de autoayuda para administradores de sistemas, los más puristas no lo reconocerán pero a todo el mundo se le olvida el dichoso barrabin barrabash (#!/bin/bash) y que mejor que utilizar la primera entrada para la cabecera de los scripts en bash.

Dejo el código del archiconocido hola mundo:

#!/bin/bash

echo 'hola mundo';

Y ya sabeis no os olvides de dar permisos de ejecución al script (chmod +x)