Como programar el apagado del PC

Imagen de Daisuke
0 puntos

Bueno este es un sencillo escript que permite de una forma sencilla programar el apagado del PC.

Este tutorial fue propabo en ubuntu 7.04 pero es valido para todas las versiones.

El escript es el siguiente:

#!/bin/sh
clear
echo "****Bienvenido al Sitema de Apagado Automatico****"
echo ""
echo ""
echo "MENU"
echo " 1.-Apagar PC ahora"
echo " 2.-Reiniciar PC ahora"
echo " 3.-Apagar PC en un ahora determinada"
echo " 4.-Apagar PC en un lapso determinado"
echo " 5.-Salir"
echo ""
read -p "Seleccionar Opcion: " OPCION
case $OPCION in
1) sudo halt;;
2) sudo reboot;;
3) echo -n "Ingresa la hora de apagado: "
read hora
sudo shutdown -h $hora;;
4)echo -n "Ingresa el numero de minutos, tras cual el PC se apagara: "
read minutos
sudo shutdown -h $minutos;;
5) exit;;
*) echo "Usted ingreso una opcion que no esta en el menu"
exit 1;;
esac
exit 0

Imagen de el nota
+1
0
-1

Sólamente hay que conocer un comando:

shutdown

Y poniendo en la consola ... "shutdown --help" te indicará como utilizarlo con sus diferente opciones.

Yo personalmente utilizo "shutdown -h +X" , siendo X el número de minutos que transcurrirán antes de apagarse.

Es necesario ser superusuario para utilizar éste comando.

Hay utilidades que tienen un comando muy fácil de utilizar como es el caso y en cambio en otras son un poco más complejas, además con una sintaxis compuesta de una "parrafada" que suele dar mucha pereza escribir. Para éstos casos es ideal crearse Scripts, yo no se hacer ninguno, pero no le veo mucha complejidad.

+1
0
-1
Imagen de jolpater
+1
0
-1

El hombre solamente esta mostrando una automatizacion del shutdown en su forma mas minima, que si entiendes el script solo te das cuenta que en vez de colocar shutdown que (tiene 8 letras) te las ahorras con un solo numero (opcion) y la contraseña es cuestion de comodidad no de saber que comando usar.

Y es mejor tener un script que abrir una terminal para digitar shutdown.

+1
0
-1
  • Libertad 0: La “libertad” para ejecutar el programa con cualquier propósito.
  • Libertad 1: La “libertad” para estudiar y modificar el programa.
  • Libertad 2: La “libertad” de copiar el programa y ayudar con
Imagen de angelverde
+1
0
-1

Es un bug inocente:

echo "****Bienvenido al Sitema de Apagado Automatico****"

Deberia ser:

echo "****Bienvenido al Sistema de Apagado Automatico****"

*******************************************************************

El amor es lo primero despues de la libertad. Ahora soy Ubuntu.

+1
0
-1
Imagen de wibort
+1
0
-1

Compi me podrias explicar como lo pongo como script, es decir copie tu programa en el gedit y lo guarde, pero no se si debo ponerle alguna extension especial o simplemnete como se ejecuta el archio ?? lo copio en consolo o como le hag? gracias de antemano.

by wibort

UIS Colombia

+1
0
-1

by wibort

UIS Colombia

Imagen de ketk
+1
0
-1

Haz clic derecho en el archivo -> Propiedades -> Permisos -> Permitir ejecutar el archivo como un programa.
Luego haces doble clic en el archivo y escojes ejecutar en un terminal.


Hay tres tipos de personas: las vivas, las muertas y las que caminan sobre el mar. 6b 65 74 6b

+1
0
-1

TuVela.com información, tutoriales, curiosidades y más sobre Ubuntu, GNU/Linux y otros temas de mi interés. 6b 65 74 6b


Imagen de Argel
+1
0
-1

Hola Daisuke, probé tu script y funcionó muy bien... sólo tengo una duda, la línea:

*) echo "Usted ingreso una opcion que no esta en el menu"

No la entiendo muy bien, cuando pongo cualquier número inmediatamente se cierra la terminal y no veo el mensaje "Usted ingreso una opcion que no esta en el menu".

--------------------------------------------------------

Argel.

Ubuntu user number: 20414

Linux user number: 463492

+1
0
-1

--------------------------------------------------------

Argel.

Ubuntu user number: 20414

Linux user number: 463492

Imagen de gordolaya
+1
0
-1

Hola he visto el script y me gustaria mucho poderlo utilizar he creado el fichero apagar.bin donde me he tomado la licencia de copiar lo arriba anotado, lo guardo pero no lo puedo ejecutar, aclaro que respecto al tema de los permisos utilizo y xfce e icewm y no me aparece la opcion de "permitir usar el archivo como un programa" por lo que creo que le tendre que dar permisos por consola (lo cual no me importa lo mas minimo), por otra parte el script se debe de guardar en algun directorio concreto o basta en el de documentos del home. gracias de antemano

Saludos a todos.

P.D. utilizo la v 8.04 LTS

+1
0
-1

Saludos a todos.

Imagen de Argel
+1
0
-1

Hola, te pongo esto que hace mucho me encontré en otro post de aquí:

Para ejecutar un script se puede hacer de varias maneras:

* Dandole permisos de ejecución y lanzarlo escribiendo el path donde se encuentra y el nombre. Por ejemplo si tenemos un script que se llama sx99 y que se encuentra en el directorio /opt/scripts para lanzarlo (una vez dados los permisos de ejecución) tendrías que hacer:
/opt/scripts/sx99
* Dandole permisos de ejecución y situarlo en alguno de los directorios de la variable PATH (por ejemplo en /usr/local/bin). Es similar al anterior pero para lanzarlo no hay que poner la ruta de donde se encuentra ya que es suficiente con poner su nombre
* Lanzando explícitamente la shell y pasandoe por parámetro el script (no son necesarios permisos de ejecución). En el ejemplo anterior:
bash /opt/scripts/sx99

A mí me gustó más la opción de colocarlo en /usr/local/bin (dándole los permisos de ejecución), y luego crear un lanzador en el panel superior para ejecutarlo más fácilmente. Además, lo modifiqué más a mi gusto, te lo pongo aquí por si te interesa:

#!/bin/bash
clear
echo ""
echo "********************************************************************************"
echo "         Bienvenido al Sistema de Apagado Automático Programado del PC.         "
echo "********************************************************************************"
echo ""

# Esta línea condiciona el lazo a que la opción escogida sea diferente de 3.
while [ "$OPCION" != 3 ]
do
	# Se hace una lista de "echos" de las opciones desde 1 a 3, con su descripción,
	# para que sean mostradas en la pantalla y así poder escoger alguna.
	echo "OPCIONES:"
	echo ""
	echo "	[1] Apagar a una hora determinada."
	echo "	[2] Apagar en un lapso determinado en minutos."
	echo "	[3] Salir (sin programar ninguna acción)."
	echo ""

	# Sigue el comando "read" para que lea del teclado la opción escogida, (variable OPCION),
	# a "read" se le ha agregado "-p", que hace que muestre un mensaje, en este caso "Ingrese una opción:".
	read -p "Ingrese una opción: " OPCION

	# Para ahorrar lineas del guión se elabora un "case" con los comandos que deben ejecutarse en cada caso:
	# "sudo shutdown -h $hora", para apagar a una hora determinada [1],
	# "sudo shutdown -h $minutos", para apagar después de transcurridos algunos minutos [2],
	# despues viene la opción [3] vacía que ejecuta el comando "exit 0",
	# finalmente se incluye "cualquier otra cosa" con el carácter "*", que indica una opción inválida,
	# borra todo lo anterior con "clear" y muestra de nuevo el menú, para intentar de nuevo seleccionar
	# una opción válida.
	# la orden "clear" puede suprimirse sin problema, si se desea ver lo anterior.
	case $OPCION in
		1) echo -n "Ingresar la hora de apagado (hh:mm, en formato de 24 h): "
		   read hora
		   sudo shutdown -h $hora
		   exit 1;;
		2) echo -n "Ingresar el número de minutos, tras los cuales la PC se apagará: "
		   read minutos
		   sudo shutdown -h $minutos
		   exit 1;;
		# Esta opción "3);;" funciona porque el "while" indica que debe ser diferente de 3, de lo contrario,
		# habría que escribirla así: "3) exit 1;;"
		3);;
		*) clear
		   echo ""
		   echo "********************************************************************************"
		   echo "                  OPCIÓN INGRESADA INVÁLIDA, INTENTAR DE NUEVO                  "
		   echo "********************************************************************************"
		   echo "";;
	esac
done
exit 0

Saludos y suerte.

--------------------------------------------------------

Argel.

Ubuntu user number: 20414

Linux user number: 463492

+1
0
-1

--------------------------------------------------------

Argel.

Ubuntu user number: 20414

Linux user number: 463492

Imagen de gordolaya
+1
0
-1

lo tengo en usr/bin pero no consigo darle permisos, por otra parte lo copie en /home/mi_carpeta/apagar.bin y desde ahi si ejecuto en consola la orden

sudo bash /home/mi_carpeta/apagar.bin

entonces funciona correctamente, luego al final lo que he hecho (para salir del paso) es crear un lanzador que se ejecuta en consola con la instruccion arriba mencionada.

No lo doy por solucionado ya que no me parece una solucion elegante la que he conseguido, creo que lo mejor es lo que tu dices, es decir ubicarlo en /usr/bin, hasta que no lo consiga (soy algo tozudo)lo seguire intentando.

Mil gracias por tu ayuda, prometo probar tu script

Saludos a todos.

P.D. utilizo la v 8.04 LTS

+1
0
-1

Saludos a todos.

Imagen de Argel
+1
0
-1

Hola gordolaya, ¿ya probaste ponerlo en "/usr/local/bin" en vez de "/usr/bin"?, los permisos que yo le di son los siguientes:

-rwx------ 1 argel argel 2425 2008-11-24 23:47 approg.sh

Si con la interfaz gráfica no se pueden asignar los permisos, prueba a usar el comando "chmod" o el "umask".

Para lanzarlo rápidamente puse un lanzador en el panel superior, con lo siguiente:

Tipo: Aplicación en terminal
Nombre: El que desees
Comando: nombre_archivo.sh
Comentario: El que desees
Ícono: El que desees

Personalmente me ha funcionado muy bien.

Saludos y suerte.

--------------------------------------------------------

Argel.

Ubuntu user number: 20414

Linux user number: 463492

+1
0
-1

--------------------------------------------------------

Argel.

Ubuntu user number: 20414

Linux user number: 463492

Imagen de sebastian rehermann
+1
0
-1

con el comando "at"

+1
0
-1

sebaji

Imagen de Noelito3
+1
0
-1

Una opción muy sencilla sería utilizar crontab para ejecutar shutdown. En este enlace se explica:
http://felinfo.blogspot.com/2011/10/programar-el-apagado-de-ubuntu.html

+1
0
-1
Imagen de LorepRocks
+1
0
-1

Hola queria preguntar si de casualidad tienes alguna idea de como se haria este mismo bash pero para apagar todas las maquinas de una red al tiempo?

+1
0
-1