GNU/Linux >> Tutoriales Linux >  >> Linux

¿Es posible editar un enlace simbólico con un editor de texto?

No es posible directamente, como ya han señalado otros, pero, por supuesto, puede escribir un script para ello. Aquí hay uno que se me ocurrió cuando tuve que cambiar muchos enlaces simbólicos

#! /bin/bash

tmp=$(mktemp)
trap "rm $tmp" EXIT

while [ ! -z "$1" ]; do
    filename="$1"; shift
    if [ ! -h "$filename" ]; then
        echo "Not a symlink: $filename";
        continue
    fi
    stat -c "%N" "$filename" >> $tmp
done
emacs $tmp

while read filename linkname; do
    ln -sf "$linkname" "$filename"
done < <(sed "s/'\(.*\)' -> '\(.*\)'/\1 \2/" $tmp)

Funcionó para mí, pero ciertamente no es perfecto, así que úsalo bajo tu propio riesgo...


En principio, es posible, pero el editor necesitaría admitirlo específicamente, ya que leer el destino de un enlace simbólico requiere una llamada especial al sistema:readlink() .

Es poco probable que encuentre editores que realmente hagan esto, ya que no es muy útil y entra en conflicto con lo que la mayoría de los usuarios quieren que haga el editor cuando se les pide que abran un enlace simbólico:abrir el archivo al que apunta.


Según el Almacenamiento de enlaces simbólicos en el artículo Enlaces simbólicos de Wikipedia, los enlaces simbólicos se almacenan en un inodo . Este inodo es una estructura de datos que contiene información sobre el archivo en cuestión; según este hilo, el touch El comando se puede utilizar para cambiar algunos de sus valores. Por lo tanto, puede que no sea posible modificarlo usando un editor de texto, debido a los problemas que mencionó @Wyzard, pero podría modificarse usando otras herramientas de línea de comandos como touch .

¡Espero que esto ayude!


Sí, en Emacs esto es posible en modo dired, específicamente en modo wdired (dired escribible).

Tenga en cuenta que tanto dired como wdired son paquetes integrados.

He aquí un ejemplo...

(Por cierto:estoy usando Smex para darle a Emacs M-x búsqueda de comandos y ejecución de una interfaz de usuario más ergonómica + coincidencia aproximada)


Linux
  1. Encienda su editor de texto de terminal Linux con ed

  2. Guía del editor de texto ViM 101

  3. ¿Cómo editar archivos del sistema con el editor Kate?

  4. Atom-IDE:editor de texto Atom con esteroides

  5. Edición remota con editor local (Linux)

Cómo trabajar con Nano Editor en Linux

Primeros pasos con Nano Text Editor [Guía para principiantes]

Cómo instalar paquetes en Atom Text Editor

Los 7 mejores editores de texto en Linux

Trabajar con el editor Vim (Editor de texto)

Editor de texto / registro con soporte de actualización automática