Añadir a favoritos (CTRL-D)
Comprar | Carrito | Buscarcosaslibres.com
cd /
 ¿ Que es ?   Entretenimiento   Nosotros   Catalogo de Productos Linux 
 [#Linux|Software|Hardware]   [Kiosco|Links]   [Acerca|Buscar]   [Colombia|Hosting|Internacional] 

Definiciones
Linux
Código_Abierto
Licencia
Preparativos
Instalar Linux
Quitar Windows
Linux/Win
Redes
Archivos
Escritorio
Multimedia
Ofimática
Juegos
Programación
Servidores
Científicos
Humor
Distribuciones
Red_Hat
Mandrake
Debian
Slackware
Manuales
Red_Hat
Mandrake
Debian
Slackware
HOWTOs
Links
Links
Red_Hat
Mandrake
Kernel
GNU
OpenOffice
[ Preguntas frecuentes ] [ Visite nuestra Promoción vigente ]

Venta de CDs Linux
Visite Nuestro Catalogo

comprar linux


Página siguiente Página anterior Índice general


6. Caracteres especiales: secuencias de escape octales

Aparte de los caracteres que se pueden teclear mediante un teclado, hay muchos otros que se pueden mostrar por la pantalla. He creado un script que permite comprobar qué tiene disponible el tipo que esté usando. El comando principal a usar para utilizar estos caracteres es echo -e. La opción -e le indica a echo que habilite la interpretación de caracteres escapados mediante contrabarra. Lo que aparezca a partir de un 200-400 octal será muy diferente con un tipo VGA de lo que aparezca con un tipo estándar linux. Queda avisado de que algunas de estas secuencias de escape tienen extraños efectos en el terminal, y no he intentado evitarlos. Los caracteres de dibujos de líneas y bloques (que nos resultan tan familiares a los usuarios de WordPerfect) utilizados masivamente en el proyecto Bashprompt están entre el 260 y 337 octal.


  #!/bin/bash

  #   Script: escgen

  function usage {
     echo -e "\033[1;34mescgen\033[0m <valor_inferior> [<valor_superior>]"
     echo "   Generador de secuencias de escape octales: imprime todas las"
     echo "   secuencias de escape contenidas entre los valores menor y"
     echo "   mayor. Si no se proporciona el segundo valor, se imprimen"
     echo "   8 caracteres."
     echo "   1998 - Giles Orr, sin garantía."
     exit 1
  }

  if [ "$#" -eq "0" ]
  then
     echo -e "\033[1;31mPor favor incluya uno o dos valores.\033[0m"
     usage
  fi
  let lower_val=${1}
  if [ "$#" -eq "1" ]
  then
     # Si no hay dos valores, sacar 8 caracteres
     upper_val=$(echo -e "obase=8 \n ibase=8 \n $lower_val+10 \n quit" | bc)
  else
     let upper_val=${2}
  fi
  if [ "$#" -gt "2" ]
  then
     echo -e "\033[1;31mPor favor, incluya dos valores.\033[0m"
     echo
     usage
  fi
  if [ "${lower_val}" -gt "${upper_val}" ]
  then
     echo -e "\033[1;31m${lower_val} es mayor que ${upper_val}."
     echo
     usage
  fi
  if [ "${upper_val}" -gt "777" ]
     then
     echo -e "\033[1;31mLos valores no pueden superar 777.\033[0m"
     echo
     usage
  fi

  let i=$lower_val
  let line_count=1
  let limit=$upper_val
  while [ "$i" -lt "$limit" ]
  do
     octal_escape="\\$i"
     echo -en "$i:'$octal_escape' "
     if [ "$line_count" -gt "7" ]
     then
        echo
        #   Put a hard return in.
        let line_count=0
     fi
     let i=$(echo -e "obase=8 \n ibase=8 \n $i+1 \n quit" | bc)
     let line_count=$line_count+1
  done
  echo

También se puede usar xfd para mostrar todos los caracteres de un tipo X, mediante el comando xfd -fn <tipo>. Pinchando sobre un caracter determinado se puede obtener mucha información sobre él, incluyendo su valor octal. El script de arriba puede resultar útil en la consola, y en el caso de que no se esté seguro acerca del nombre del tipo de letra.


Página siguiente Página anterior Índice general

Atención: Visite nuestro listado de productos de computadores, Linux y software libre aqui...

Inmediatos
Como Comprar
Recomiéndenos
Lista de Correo
Nosotros

Políticas
HOWTOS
CDs Linux
Diseño Web

Hosting
Noticias
Linux

Todos los derechos reservados 2002-2004 cosaslibres.com es marca registrada.