Como convertir tus scripts en comandos en líneas de comandos / terminales de Linux y Mac
In English
Primero creamos una carpeta bin en tu carpeta de usuario.
Para ver donde estamos utilizamos pwd y para ver donde está nuestra carpeta de usuario podemos utilizar echo $HOME
pwd
echo $HOMEy entonces entramos a nuestra carpeta de usuario (si acabas de abrir la terminal ya debes estar ahí). El comando cd sin parámetros nos lleva a la carpena del usuario, o podemos utilizar cd $HOME
cd
cd $HOMELa carpeta no tiene por que llamarse “bin”, puede llamarse lo que tu quieras. Yo nombro mis carpetas “bin” ya que los sistemas usualmente utilizan una carpeta llamada “bin” para lo ejecutable.
mkdir bin
cd binAhora hacemos un archivo, puede tener una extensión .sh, o ninguna extensión.
touch thing
touch thing.shAhora editamos el archivo que queremos, yo creé ambos para este ejemplo pero puede ser cualquiera de ellos. Normalmente yo uso vim para esto pero puedes usar algo como nano si tú no usas vim (para salir de vim en caso de que entres, presiona ESCAPE, entonces escribe :q! y presiona ENTER).
Entonces la parte importante del script. La primera línea dice que tipo de script es. Opciones normalmente son “Bash”, pero puede ser “Python”, “Perl”. Para este artículo voy a utilizar Bash ya que es un script de Bash.
#!/bin/bashY un simple “¡Hola Mundo!”.
echo “¡Hola Mundo!”Ahora, volvamos este archivo ejecutable.
chmod u+x cosa
chmod u+x cosa.shAhora, tenemos el script que queremos y es ejecutable, podemos ejecutarlo al entrar en la carpeta y usar ./ antes del script, pero queremos que sea ejecutable desde donde estemos, así que vamos a la última parte.
Todas las carpetas con scripts residen en la variable $PATH. Agregaremos nuestra carpeta bin.
Ya tenemos una variable $HOME, esto imprimirá. Así que actualizamos $PATH con:
Ahora $PATH tiene $HOME/bin más el $PATH que estaba antes.
Podemos usar ahora, en esta terminal, “cosa” o “cosa.sh”, dependiendo de que hiciste. Pero esto solo funcionará en esta terminal, queremos que esté disponible en cualquier terminal que abramos, así que agreguemos el comando a nuestro .bashrc
echo “export PATH=$HOME/bin:$PATH” >> $HOME/.bashrcEsto funcionará en una distribución de Linux como Ubuntu, Linux Mint o Raspbian, basicamente en distribuciones basadas en Debian. Sin embargo, en Mac podemos agregar esta línea a .bash_profile para hacer lo mismo.
echo “export PATH=$HOME/bin:$PATH” >> $HOME/.bash_profileY está listo.