31 votos

Cómo crear un archivo universal (script) para un Mac, a partir de varios comandos de Terminal

Tengo varios comandos de Terminal que utilizo para solucionar problemas, escribiéndolos uno a uno en la ventana del terminal.

Estos comandos requieren la introducción de la contraseña del usuario.

Estoy buscando una manera de crear un archivo universal (script) con estos comandos. Quiero ser capaz de ejecutar el archivo en un Mac simplemente haciendo doble clic en él o arrastrando el archivo sobre el icono de la Terminal.

Nunca había hecho algo así. ¿Hay alguna manera de crear un script? Por favor, aconséjame.

0 votos

¿Quiere decir que quiere ejecutar un script sin ¿que el usuario introduzca su contraseña?

0 votos

@Allan Quiero correr un archivo en lugar de múltiples comandos . Ejecutarlo sin que el usuario introduzca su contraseña al menos una vez sería bueno, pero lo más probable es que sea imposible si no me equivoco.

0 votos

Eso es definitivamente posible a menos que necesites hacer algo que requiera de un administrador - ver mi respuesta más abajo

48voto

cullub Puntos 288

Respuesta corta

A .command script debería funcionar


Paso a paso

  1. Abra TextEdit y cree un nuevo archivo

  2. Convertirlo en texto plano haciendo clic en Formato > Convertir en texto plano

  3. Añade tus comandos, uno por línea. Por ejemplo, podrías hacer:
    #! /bin/bash cd ~/Desktop mkdir myCoolFolder cd myCoolFolder

  4. Ejecutar chmod u+x ~/Desktop/myCommandScript.command en su terminal, donde ~/Desktop/myCommandScript.command es la ruta de su script. Esto le dará al terminal permiso para ejecutar el archivo.

  5. ¡Ya está! Haz doble clic en el archivo para ejecutarlo. Arrastrando sobre el icono de la terminal también funcionará.

Notas:

  • Si necesitas hacer algo que requiera acceso Root (administrador), puedes anteponer a tu comando sudo . Cuando se ejecute el script, tendrás que introducir tu contraseña (y ser administrador)
  • Si el usuario final no es un administrador, pero necesita hacer algo que requiera acceso Root, puede utilizar su someAdminName que ejecutará el comando como someAdminName (necesitarás su contraseña).

También puede ver <a href="https://stackoverflow.com/questions/5125907/how-to-run-a-shell-script-in-os-x-by-double-clicking">aquí </a>en Stack Overflow para obtener más información.

0 votos

¿Hay alguna forma de hacer que un archivo de comandos no cierre la sesión? Quiero tener un archivo de comandos que abra la terminal con una variable de ruta predefinida.

11voto

Douglas Puntos 10417

Un script no es más que una serie de comandos, así que podrías ponerlo en un bash script.

#!/bin/bash

command 1
command 2
command 3

Ahora bien, todo depende de los tipos de comandos y de si requieren o no la intervención del usuario.

Sin embargo, si está obteniendo información de diagnóstico, por ejemplo, puede tener un script que haga

#!/bin/bash

# Get SMART status of main drive
diskutil info disk0 | grep -i smart

# Get the model of the machine in question
system_profiler SPHardwareDataType | grep -i Identifier

Estos son sólo algunos ejemplos. Tenga en cuenta que cualquier salida generada, será enviada a la consola (pantalla). Sin embargo, puede redirigir la salida a un archivo añadiendo >> /path/to/outputfile.txt al final de cada comando para que tengas un archivo que puedas analizar una vez que el archivo haya terminado de ejecutarse.

Puedes nombrar el archivo diagnostics.sh y colócalo donde quieras. Sólo asegúrate de hacerlo ejecutable emitiendo el comando chmod +x diagnostics.sh y utilizar ./diagnostics.sh para ejecutarlo o haz doble clic en él para ejecutarlo si está guardado en tu escritorio .

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X