Přímo to možné není, jak již upozornili jiní, ale samozřejmě si k tomu můžete napsat scénář. Tady je jeden, na který jsem přišel, když jsem musel změnit spoustu symbolických odkazů
#! /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)
Fungovalo to pro mě, ale rozhodně to není dokonalé, takže použití na vlastní nebezpečí...
V zásadě je to možné, ale editor by to musel konkrétně podporovat, protože čtení cíle symbolického odkazu vyžaduje speciální systémové volání:readlink()
.
Je nepravděpodobné, že byste našli nějaké editory, které to skutečně dělají, protože to není příliš užitečné a je v rozporu s tím, co většina uživatelů chce, aby editor udělal, když je požádán o otevření symbolického odkazu:otevřít soubor, na který odkazuje.
Podle Ukládání symbolických odkazů části v článku Symbolické odkazy na Wikipedii jsou symbolické odkazy uloženy v inode . Tento inode je datová struktura obsahující několik informací o příslušném souboru – podle tohoto vlákna touch
příkaz lze použít ke změně některých jeho hodnot. Takže to možná nebude možné upravit pomocí textového editoru kvůli problémům, které @Wyzard zmínil, ale může to být upravit pomocí některých dalších nástrojů příkazového řádku, jako je touch
.
Doufám, že to pomůže!
Ano, v Emacsu je to možné v dired-mode, konkrétně wdired (zapisovatelné dired) režimu.
Všimněte si, že dired i wdired jsou vestavěné balíčky.
Zde je příklad...
(BTW:Používám Smex, abych dal Emacs M-x
hledání příkazů a provádění ergonomičtějšího uživatelského rozhraní + fuzzy párování)