Redireccionamiento:

Ya sabemos ordenar una lista de palabras que hemos escrito, pero, ¿y si la lista es muy grande y cuando pulsamos Crtl-D no entra entera por la pantalla?, con '>' podemos redireccionar la salida de cualquier comando para que vaya a un archivo de texto o de cualquier otro tipo:

$sort > lista
hola
que tal
adios
linux
123489
23424
-
..
-.
.-
1
p
fff
zzz
za
az
...
(Crtl-D)
$cat lista
-
-.
.-
..
1
123489
23424
adios
az
fff
la
linux
p
que tal
za
zzz

De este modo podemos hacer que la salida de algún comando quede registrada, por supuesto el comando sort admite que se le pase como argumento un archivo con las palabras desordenadas:

$sort lista.desordenada>lista.ordenada

Así, sin escribir nada, tenemos la lista ordenada y listo para imprimir o lo que queramos.

también podemos redireccionar la entrada con el operador '<':

#Hacemos que cat tome la entrada de lista como si estuvieran siendo escritos desde el teclado
$ cat < lista
-
.-
.-
..
1
123489
23424
adios
az
fff
la
linux
p
que tal
za
zzz
#Esto equivale a lo anterior
$ cat lista
-
.-
.-
..
1
123489
23424
adios
az
fff
la
linux
p
que tal
za
zzz

Tanto cat como sort son filtros: leen los datos desde la entrada estándar, los procesan y los devuelven procesados a la salida estándar.

Pero, ¿y si queremos guardar la salida en un archivo que ya existe y tiene datos, por ejemplo un diccionario?, con > los sobrescribiriamos todos, para esto usamos >> que añade los datos al final del archivo sin borrar el resto:

$ cat ls.lista
holajuan.txt
holas
holasanti.txt
ls-lista
php
pruebas
public_html
web
$ cat hola>>ls.lista
$ cat ls.lista
holajuan.txt
holas
holasanti.txt
ls-lista
php
pruebas
public_html
web
hola
que tal
adios
linux