elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  comando read
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: comando read  (Leído 3,814 veces)
puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
comando read
« en: 27 Diciembre 2016, 18:35 pm »

Hola,

Me gustaría saber si hay alguna forma de llenar el campo read de un script utilizando otro.
Por ejemplo este script que no es posible modificar , al ejecutarse me pide que introduzca el valor:
 
Código:
   read -p "Introduce un Valor: " variable
   echo "$variable"
 
Ahora lo que necesito saber si existe alguna forma para que ese valor lo introduzca otro script sin tocar el primer script.
Código:
   ?????
Gracias


En línea

warcry.


Desconectado Desconectado

Mensajes: 1.004


Ver Perfil
Re: comando read
« Respuesta #1 en: 28 Diciembre 2016, 15:04 pm »

vamos a suponer que el script 1.sh es intocable

Código:
#!/bin/bash

echo -e "¿buenos dias que quieres parsear?
"

read parseo


echo -e "
ya ta ;)
"

echo -e $parseo

como puedes apreciar me hace una pregunta y contesto y me lo muestra en pantalla lo que he contestado

Código:
warcry Desktop # sh 1.sh
¿buenos dias que quieres parsear?

hola mundo

ya ta ;)

hola mundo
warcry Desktop #

bien esa seria mi salida "hola mundo" que es lo que necesito que lea mi segundo script que es 2.sh

para eso necesito apoyarme en un archivo de texto el 1.lst, al cual voy a mandar con el comando tee toda la información del script intocable.

Código:
warcry Desktop # sh 1.sh | tee 1.lst
¿buenos dias que quieres parsear?

hola mundo

ya ta ;)

hola mundo
warcry Desktop #


el script se ha ejecutado con normalidad, y a la vez me ha generado este archivo de texto:

Código:
¿buenos dias que quieres parsear?


ya ta ;)

hola mundo

ahora tengo que acoplar el segundo script el cual si puedo modificar para que al read le pase la información que necesito

como a mi me interesa la salida que sale en la ultima linea, la manera mas eficiente seria crear una variable en el segundo script y olvidarte del read

Código:
#!/bin/bash

suerte=$(tail -1 1.lst)

echo $suerte

que aun asi quieres seguir utilizando read, pues generas un archivo intermedio

Código:
#!/bin/bash

tail -1 1.lst > 2.lst

read suerte < 2.lst

echo $suerte

en cualquiera de los dos casos la salida es la misma

Código:
warcry Desktop # sh 2.sh
hola mundo






En línea

HE SIDO BANEADO --- UN PLACER ---- SALUDOS
puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
Re: comando read
« Respuesta #2 en: 28 Diciembre 2016, 19:04 pm »

Creo que me explicado mal , lo siento.

EL tema es que yo quiero conectarme por ssh pero quiero que no me pide la contraseña
es decir en el mismo comando introducir la contraseña pero no creo que se pueda.
Por eso quería saber si hay alguna forma para que un script autoconteste a la petición de contraseña del  ssh.

o otro ejemplo es el unrar que al querer extraer un rar encryptado me pide pass y yo quiero ponerle la pass dentro del comando o crear un script que autoconteste a la petición.

No se si me he explicado  :-\

Gracias
En línea

warcry.


Desconectado Desconectado

Mensajes: 1.004


Ver Perfil
Re: comando read
« Respuesta #3 en: 28 Diciembre 2016, 19:08 pm »

Código:
ssh -p 22 usuario:contraseña@192.168.0.168

no se que tiene de misterio

edito: y con respecto a unrar

Código:
NAME
     unrar - extract files from rar archives

SYNOPSIS
     unrar <command> [-<switch 1> -<switch N>] archive [files...] [path...]

DESCRIPTION
     This manual page documents briefly the unrar command.
     This manual page was written for the Debian GNU/Linux distribution
     because the original program does not have a manual page.
     Commands and options described here are as of unrar 2.02.

OPTIONS
     After the program name comes a command and then optional switches with 
     dashes before them. A summary of commands is included below. For a complete
     description, run unrar without options.

     e     Extract files to current directory.

     l     List archive content.

     p     Print file to stdout.

     t     Test archive files.

     v     Verbosely list archive.

     x     Extract files with full path.


SWITCHES
     NOTE: Every switch must be separated by a whitespace.
     You cannot put them together.

     -av-   Disable AV check.
     
     -c-    Disable comments show.

     -f     Freshen files.

     -kb    Keep broken extracted files.

     -ierr  Send all messages to stderr.

     -inul  Disable all messages.

     -o+    Overwrite existing files.

     -o-    Do not overwrite existing files.

     -p<password>     
            Set password.

     -p-    Do not query password.

     -r     Recurse subdirectories.

     -u     Update files.

     -v     List all volumes.

     -x<file>
            Exclude specified file.

     -x@<list>
            Exclude files in specified list file.

     -x@    Read file names to exclude from stdin.

     -y     Assume Yes on all queries.


SEE ALSO
    The program is documented fully in Rar.Txt which you find in /usr/doc/rar.
    Options described there are same for rar and unrar.

AUTHOR
     This manual page was written by Petr Cech <cech@debian.org> according
     to "unrar -h" for the Debian GNU/Linux system (but may be used by others).

tiene la opcion -p para introducir la contraseña directamente  :huh:
« Última modificación: 28 Diciembre 2016, 19:12 pm por warcry. » En línea

HE SIDO BANEADO --- UN PLACER ---- SALUDOS
puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
Re: comando read
« Respuesta #4 en: 28 Diciembre 2016, 19:16 pm »

los he intentado las 2 cosas antes de postear y no me funcionaron me seguía pidiendo la pass en los 2 casos
En línea

warcry.


Desconectado Desconectado

Mensajes: 1.004


Ver Perfil
Re: comando read
« Respuesta #5 en: 28 Diciembre 2016, 20:23 pm »

los he intentado las 2 cosas antes de postear y no me funcionaron me seguía pidiendo la pass en los 2 casos

hay que usar mas google  :¬¬

supongo que la conexión ssh la tendras cifrada por rsa y por eso te pide pass.

descargate el paquete sshpass y lo instalas

Código:
sshpass -p contraseña ssh usuario@192.168.0.1

edito la negociación previa de la key RSA la tienes que tener hecha y guardada el archivo /root/.ssh/known_hosts, esto se hace solo una vez y en la primera conexion, despues como queda guardada ya no hace falta

Código:
warcry ~ # ssh usuario@192.168.0.1
The authenticity of host '192.168.0.1 (192.168.0.1)' can't be established.
RSA key fingerprint is cc:a7:d4:94:3a:3b:aa:f2:ab:13:cd:e5:6a:fc:0a:9a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.1' (RSA) to the list of known hosts.
usuario@192.168.0.1's password:
 >

despues con el sshpass entraras directamente

Código:
warcry ~ # sshpass -p contraseña ssh usuario@192.168.0.1
>

para el unrar tan sencillo como esto

Código:
warcry ~ # unrar x -pcontraseña /root/Desktop/1.rar 

UNRAR 5.30 beta 6 freeware      Copyright (c) 1993-2015 Alexander Roshal


Extracting from /root/Desktop/1.rar

Extracting  1.lst                                                         OK
All OK
warcry ~ #

la única complicación puede venir si dejas un espacio en blanco entre el -p y la clave
« Última modificación: 28 Diciembre 2016, 20:45 pm por warcry. » En línea

HE SIDO BANEADO --- UN PLACER ---- SALUDOS
puchi

Desconectado Desconectado

Mensajes: 21



Ver Perfil
Re: comando read
« Respuesta #6 en: 28 Diciembre 2016, 20:59 pm »

Buala!   ;-)

no me esperaba que ese miserable espacio me causara este problema jajajaj -p

sobre el otro lo voy a probar ahora, estaba buscando yo tmb por google y encontra algo llamado empty-expect para automatizar scripts por bash y que hace funcionar cosas como estas XD
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Read ZIP file info
Programación Visual Basic
cobein 1 1,701 Último mensaje 13 Octubre 2010, 11:16 am
por ranslsad
[BASH] Ayuda!! comando ping y ejecucion script dentro de un comando
Scripting
H4WK 1 5,120 Último mensaje 1 Junio 2013, 11:18 am
por H4WK
Read timeout
Java
Xedrox 2 2,352 Último mensaje 5 Septiembre 2014, 20:45 pm
por Chuidiang
Medir tiempo que tarda un comando en ejecutarse (y ejecutar el comando)
GNU/Linux
ccrunch 2 3,734 Último mensaje 2 Diciembre 2014, 00:59 am
por MinusFour
Por que read no funciona con system?
Programación C/C++
Lieutenant McFarley 4 3,137 Último mensaje 24 Marzo 2022, 23:45 pm
por RayR
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines