Linux - programacion bash

 
Vista:
sin imagen de perfil

programacion bash

Publicado por antonio (7 intervenciones) el 09/12/2017 00:07:01
hola ojala alguien pueda ayudarme, necesito hacer un bash k pueda llevar este comando

acurcl -kill servidor -f -n 10120 -p "pid"

donde "pid" es lo unico k debe cambiar cada k ejecuto el comando.

lo k kiero hacer es el bash para k solo escriba en una terminal x ejemplo:

[root@localhost /]#kill "pid" k es la variable.

espero si me haya dado a entender de lo k necesito y alguien pueda ayudarme

gracias y saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 311
Oro
Ha mantenido su posición en Linux (en relación al último mes)
Gráfica de Linux

programacion bash

Publicado por xve (837 intervenciones) el 09/12/2017 10:04:05
segun entiendo seria así de sencillo...

1
acurcl -kill servidor -f -n 10120 -p "$1"

el script cambiara el $1 por el primer parámetro enviado al script.

Es esto lo que necesitas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

programacion bash

Publicado por antonio (7 intervenciones) el 09/12/2017 12:46:32
hola gracias por tu respuesta, me imagino k si debe ser asi... pero la verdad no se mucho sobre esto eh hice lo siguiente:

#!/bin/bash
acurcl -kill macropro -f -n 10102 -p $1

y lo guarde con nombre baja.sh

pero al kererlo ejecutar me dice k no existe, sera k me puedas ayudar mas... saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

programacion bash

Publicado por jgnoss (4 intervenciones) el 09/12/2017 14:55:37
has cambiado los derechos para esta executable tu script?

1
chmod u+x baja.sh

luego si el script esta en la misma carpeta llámalo con
1
./baja.sh [PID]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

programacion bash

Publicado por antonio (7 intervenciones) el 09/12/2017 17:53:43
hola me sigue saliendo un mensaje:

You must be 'root' to use this option

no se si algo me esta faltando o fallando en el bash

gracias y saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

programacion bash

Publicado por jgnoss (4 intervenciones) el 09/12/2017 19:54:02
Si claro debes tener suffi privilegios para hacer esto

usa sudo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

programacion bash

Publicado por antonio (7 intervenciones) el 10/12/2017 15:50:51
ya le di todos los privilegios, pero lo k no entiendo es k si doy el comando sin el bash no necesito privilegios para hacerlo.

si escribo completo en la terminal:

por ejemplo: acurcl -kill macropro -f -n 10102 -p 4356 el 4356 es el "PID" k sera variable.

funciona sin privilegios y hace lo k necesito k es dar de baja un usuario, lo k kiero al tener el bash es simplificar escribir todo y solo cambiar el "PID" con el bash de baja.

habra una forma en k mi bash se ejecute y solo me pida k escriba el "PID" para k se termine de ejecutar el comando completo, algo asi como:

[root@localhost /]#./baja.sh y k despues de dar enter diga algo como:
inserte el "PID" :
Y ahi es donde yo le de el numero k kiero y termine de ejecutar el comando.

espero me alla dado a entender y si es posible k se pueda... gracias x su atencion y respuestas... saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

programacion bash

Publicado por jgnoss (4 intervenciones) el 10/12/2017 16:48:04
> si doy el comando sin el bash no necesito privilegios para hacerlo.

No lo entiendo bien que quieres decir con
" si doy el comando sin el bash "

No conozco nada sobre acurcl, pero la documentacion dice:

The acurcl -kill command causes the AcuConnect process to halt.
...

To use -kill on a UNIX server, you must be logged in as root or superuser. On a Windows server, you must use -kill from the administrator account or from an account that belongs to the administrators group.


En alguna forma ya tienes los privilegios si estas ejecutando este comando desde la linea de comandos.

con la segunda pregunta, hacer el script interactivo, creo que no es buena idea. Mas facil es con un parametro.

pero aquí un ejemplo como puedes hacerlo:


1
2
3
4
5
6
#!/bin/bash
# pregunta
echo "insertar PID : "
read mypid
 
acurcl -kill macropro -f -n 10102 -p $mypid
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

programacion bash

Publicado por antonio (7 intervenciones) el 12/12/2017 03:52:30
ya hice el script y me funciono asi como queria, gracias x tu ayuda y consejos...

espero poder devolver esa ayuda...

saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

programacion bash

Publicado por jgnoss (4 intervenciones) el 12/12/2017 04:41:41
Bueno que funciona.

Me alegro de poder ayudar.

ju
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Miguel Gaspar

programacion bash

Publicado por Miguel Gaspar (1 intervención) el 09/12/2017 22:04:22
Tal como comenta Jgnoss, es un problema de privilegios... de seguro que si ejecuta la instrucción directamente en la terminal también te dirá que te faltan privilegios.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar