Autor

Alejandro Alcalde

Graduado en Ingeniería Informática en la ETSIIT, Granada. Creador de El Baúl del Programador

Más artículos de Alejandro Alcalde

Existe un comando que realiza esta operación, rev. De acuerdo a la descripción que proporciona la documentación funciona de la siguiente manera:

Copia los archivos especificados a la salida estandar, invirtiendo el orden de los caracteres de cada línea. Si no se especifican ficheros, rev lee de la entrada estandar (el teclado).

Algunos ejemplos:


¿Te gusta el blog? Ayúdame a seguir escribiendo


echo "elbauldelprogramador" | rev

Dará el siguiente resultado:

rodamargorpledluable

Es posible usar la siguiente sintaxis:

rev<<<"Esta línea es una prueba"

Salida:

abeurp anu se aeníl atsE

Ejemplo en Perl

perl -ne 'chomp;print scalar reverse . "n";'<<<"elbauldelprogramador"

Ó

echo 'elbauldelprogramador' | perl -ne 'chomp;print scalar reverse . "n";'

Script bash para invertir cadenas

#!/bin/bash
input="$1"
reverse=""

len=${#input}
for (( i=$len-1; i>=0; i-- ))
do
   reverse="$reverse${input:$i:1}"
done

echo "$reverse"

Para ejecutarlo escribimos lo siguiente en la terminal:

./script elbauldelprogramador

En los comentarios de la fuente original en nixcraft (enlace al final de la entrada) un lector escribió dos ejemplos más, en python y PHP:

Ejemplo en python:

echo foo | python -c 'import sys;print(sys.stdin.read().strip()[::-1])'
python -c 'import sys;print(sys.stdin.read().strip()[::-1])' <<< foo

Ejemplo en PHP:

echo foo | php -r 'print strrev(trim(fgets(STDIN)));'
php -r 'print strrev(trim(fgets(STDIN)));' <<< foo

Fuente original

¿Has visto algún error?: Por favor, ayúdame a corregirlo contactando conmigo o comentando abajo.

Categorías:Etiquetas:

Quizá también te interese leer...