Foro de elhacker.net

Sistemas Operativos => GNU/Linux => Mensaje iniciado por: dato000 en 24 Mayo 2011, 23:41 pm



Título: Como evitar el salto de linea despues de READ
Publicado por: dato000 en 24 Mayo 2011, 23:41 pm
buenas tengo este codigo:

Código:
  GNU nano 2.2.4                        Fichero: menu                                                         

while  (true)

do

    echo "digite una tecla para continuar"

    read ENTER

    clear

    echo "a calendario"
    echo "b. hora"
    echo "c. para imprimir mensaje"
    echo "d. ver discos"
    echo "e. procesos"
    echo "q. para salir"

    echo "DIGITE OPCION  "


    read  OPC


    case $OPC in

       a)    cal ;;
       b)    date ;;
       c)    printf "imprimiendo, gracias vuelva pronto....   \n\n";;
       d)    df -v;;
       e)    ps -lh;;
       q)    break;;

    esac



done



Con lo cual obtengo la siguiente captura:
(http://img856.imageshack.us/img856/3120/escritoriosistemas.png) (http://img856.imageshack.us/i/escritoriosistemas.png/)


Mi pregunta es: como puedo dejar el cursor justo al lado del mensaje DIGITE OPCION??

se puede??


Título: Re: Como evitar el salto de linea despues de READ
Publicado por: dino22 en 19 Junio 2012, 17:08 pm
Código:
#Completo ejercicio con reverse (en negrita), con menú centrado y tabulado, comprobación de existencia de archivo/directorio y opción *) en el case
#para mensaje de error
a=`tput smso`
b=`tput rmso`
while true
        do
                clear
                echo "\n\n\t $a OPCIONES: $b"
                echo "\n\t\t1- Crear un directorio"
                echo "\n\t\t2- Crear un archivo"
                echo "\n\t\t3- Editar un archivo"
                echo "\n\t\t4- Fin"
                echo "\n\n\nIngrese opcion: \c"
                read opc
                case $opc in
                        1) echo "Ingrese nombre de directorio:\c"
                        read DIRE
                        if [ -d $DIRE ]
                                then
                                        echo "El directorio $DIRE ya existe"
                                else
                                        mkdir $DIRE
                                        echo "El directorio $DIRE fue creado"
                                        sleep 5
                        fi;;
                        2) echo "Ingrese nombre de archivo:\c"
                        read AR
                        if [ -f $AR ]
                                then
                                        echo "El archivo $AR ya existe"
                                else
                                        vi $AR
                        fi;;
                        3) echo "Ingrese nombre de archivo a editar:\c"
                        read AR
                        if [ -f $AR ]
                                then
                                        vi $AR
                                else
                                        echo "El archivo $AR no existe"
                        fi;;
                        4) exit;;
                        *) echo "Opción incorrecta";;
                esac
        done


Título: Re: Como evitar el salto de linea despues de READ
Publicado por: snhd6 en 20 Junio 2012, 09:23 am
También se puede con 'echo -n "DIGITE OPCION  "'. Es útil para sacar el hash de un string con "echo -n hello | sha1sum", si no toma el salto de línea.