Saltar al contenido

¿Cómo creo un archivo de script para comandos de terminal?

Te traemos la respuesta a este enigma, al menos eso deseamos. Si continuas con alguna inquietud puedes dejar un comentario, que con placer te ayudaremos

Solución:

Hay dos métodos.

Primero, lo más común es escribir un archivo, asegúrese de que la primera línea sea

#!/bin/bash

Luego guarde el archivo. Luego márcalo como ejecutable usando chmod +x file

Luego, cuando haga clic (o ejecute el archivo desde la terminal), se ejecutarán los comandos. Por convención, estos archivos generalmente no tienen extensión, sin embargo, puede hacer que terminen en .sh o de cualquier otra manera.

Algunas notas:

  • Cualquier archivo (y me refiero a cualquier) puede ejecutarse en Linux siempre que la primera línea sea una ruta al programa que debe interpretar el archivo. Los ejemplos comunes incluyen /bin/python, /bin/sh, /bin/dashpero incluso las cosas extrañas funcionan como /bin/mysql
  • Bash es un lenguaje completo. Es mucho más complejo que cmd.exe en Windows. Tiene un lenguaje de programación fuerte que admite funciones, bucles, condicionales, string operaciones, etc
  • Estos documentos pueden ayudar si tiene problemas.
  • Si no desea que el archivo sea ejecutable, puede ejecutarlo pasándolo como argumento a bash: bash file/to/run.sh

Un ejemplo simple de bash

#!/bin/bash  
echo "This is a shell script"  
ls -lah  
echo "I am done running ls"  
SOMEVAR='text stuff'  
echo "$SOMEVAR"

El segundo método es grabar comandos usando script. Correr script entonces solo haz cosas. Cuando termines de hacer cosas, escribe exit y el script generará un archivo para ti con todas las “cosas” que hiciste. Esto se usa menos pero funciona bastante bien para hacer cosas como macros. man script para más información.

¿Te refieres a escribir en un archivo usando un script de shell? Aquí hay algunas maneras:

touch file

Este método simplemente creará un archivo, pero si el archivo ya existe, simplemente cambia la fecha de modificación a la hora en que usó ese comando.

echo "text" > file

Ese método sobrescribe el contenido de file para text. Si desea borrar un archivo, simplemente puede hacer esto:

echo "" > file

Digamos que quiere escribirle más de una línea y no quiere usar miles de echo comandos, usaría este comando:

cat << EOF > file
test
test1
foo
bar
EOF

Eso le permite escribir varias líneas en un solo comando. Los contenidos de file entonces seria esto:

test
test1
foo
bar

Si desea agregar a un archivo, reemplace > para >>.

¡Espero que esto ayude!


EDITAR: Oh, ya veo, así que escribirías el archivo en gedit, usando el .sh extensión (opcional, pero es una buena idea), y luego en un administrador de archivos, haga clic con el botón derecho en el archivo, seleccione Propiedades->Permisos y verifique Allow executing file as program. Luego puede hacer doble clic en él y se ejecutará :). Además, si desea hacerlo en la terminal, puede ejecutar este comando para que sea ejecutable (es posible que desee anteponer sudo si no te pertenece):

chmod +x file

Y para ejecutar:

./file

El equivalente a los archivos por lotes de Windows son los scripts de shell, y una excelente guía de inicio es Bash Scripting.

En su mayor parte, los comandos que puede ingresar en la línea de comando se pueden colocar en un script de shell.

Un par de cosas que son diferentes de los archivos por lotes de Windows:

  • Hay diferentes intérpretes de comandos, llamados shells. El predeterminado es bash, pero si está interesado, hay otros, como zsh, ksh, dash, perl, python, etc.

  • Para ejecutar un script de shell, debe hacer que el archivo sea ejecutable, lo que puede hacer con chmod +x

  • En Ubuntu, el directorio actual no es la ruta de búsqueda del programa, por lo que debe ejecutar ./no

  • Los nombres de las variables son $no %%

  • Los comandos en un script de shell no se imprimen de forma predeterminada, como en un archivo por lotes.

  • La extensión del nombre del archivo puede ser .sh o (más habitual) no necesita usar una extensión. Poner #!/bin/bash en la primera línea del archivo, que le dice a Ubuntu qué programa usar para ejecutar el archivo.

  • Los comentarios comienzan con #no rem.

¡Espero que esto ayude y diviértanse escribiendo!

Acuérdate de que tienes la opción de decir si diste con la solución.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *