Найти полный путь к файлу с символической ссылкой (быстрее)?

enter image description here

В диалоговом окне Properties: Link target: путь к исходному файлу всегда сокращается из-за запрограммированного ограничения пространства символов даже после изменения размера окна, и поэтому не очень полезны.

Когда путь Link target копируется и вставляется в окно терминала, он выглядит следующим образом:

../../lib/firefox/icons/mozicon128.png

, что является небольшим улучшением, поскольку теперь исходное имя файла полностью известно и locate mozicon128.png предоставит правильный путь, а именно:

/usr/lib/firefox/icons/mozicon128.png

Q1: Какие есть другие варианты, чтобы найти путь быстрее, не используя предложенные два шага (возможно, правый было бы неплохо интегрировать меню, которое копирует путь в буфер обмена)?!

Q2: ../../ относится к / (см. скриншот ниже), но почему вместо того, чтобы быть более точны? Есть ли какая-либо опция в сборке, чтобы скопировать полный путь из диалогового окна Свойства (Ubuntu 11.10)?

enter image description here


Путь к изображению с символической ссылкой Firefox в этом Например:

/usr/share/pixmaps/firefox.png
0
задан 23 July 2014 в 20:09

2 ответа

Я думаю namei, утилита точно, что Вы хотите.

От man namei:

   namei  uses  its arguments as pathnames to any type of Unix file (symlinks, files,
   directories, and so forth).  namei then follows each pathname until an endpoint is
   found  (a file, a directory, a device node, etc).  If it finds a symbolic link, it
   shows the link, and starts following it, indenting the output to show the context.

   This program is useful for finding "too many levels of symbolic links" problems.
0
ответ дан 23 July 2014 в 20:09

Можно использовать сценарий наутилуса для этого:

#!/bin/bash

# Remove line feed at the end of the path
selectedPath="${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS%?}"

# Check if the selected file is a symbolic link
if [ -h "$selectedPath" ]; then
    symlinkPath=$( readlink "$selectedPath" )
else
    zenity --info --text="$( basename "$selectedPath" ) is not a symbolic link"
    exit 0
fi

# Copy the the symbolic link into the clipboard
echo "$symlinkPath" | xclip -selection clipboard
[еще 115] о readlink-> http://manpages.ubuntu.com/manpages/hardy/man1/readlink.1.html

необходимо установить xclip для этого если не уже сделанный.

1
ответ дан 23 July 2014 в 20:09

Другие вопросы по тегам:

Похожие вопросы: