#! /bin/sed -f /../ { # Reverse a line. Begin embedding the line between two new-lines s/^.*$/\ &\ / # Swap first and last character. The regexp matches until # there are zero or one characters between the markers tx :x s/\(\n.\)\(.*\)\(.\n\)/\3\2\1/ tx # Remove the new-line s/\n//g }