Cómo crear enlaces simbólicos en masa

GNU/Linux

Recientemente he instalado el paquete python3-csvkit en Fedora 24 y todos los comandos csv... terminan en -3 o -3.5.

P. ¿Cómo puedo lograr que los comandos terminen en su forma estándard, por ejemplo csvlook en lugar de csvlook-3, csvsort en lugar csvsort-3, ...?

R. Puedes crear los enlaces simbólico uno a uno por ejemplo:

$ sudo ln -s /usr/bin/csvlook-3.5 /usr/bin/csvlook

Pero podemos acelerar el proceso anterior creándolos en masa, para ello tecle el siguiente grupo de comandos en su consola.

$ for file in $(find  /usr/bin/ -name 'csv*3.5');do link=$(echo $file|sed -r 's/\-3\.5//');sudo ln -svf $file $link;done

Los comandos anteriores siguen la siguiene lógica:

1. El comando find busca en /usr/bin todo los ficheros que su nombre comienza con csv y termine con 3.5. (Puede ver Comando find – 25 ejemplos prácticos para más información sobre el comando find)

2. Para cada fichero encontrado el comando sed reemplaza la cadena 3.5 por vacío y el resultado se asigna a la variable link.

3. Por último se crea el enlace simbólico.

Lecturas recomendadas

- man find
- man sed
- man ln

Los tutoriales aquí en LibreByte están disponible bajo una licencia de software libre. Si le gusta mi trabajo considere:
Comprar un Hosting/VPS o Servidor Dedicado en MCKHost

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.