Полный путь к под управлением в настоящее время zsh?

использовать export GTK2_RC_FILES="/etc/gtk-2.0/gtkrc:$HOME/.gtkrc-2.0"

Можно поместить это в ~/.bashrc, таким образом, это всегда доступно.

Кроме того, попробуйте это: выполненный qtconfig и выберите GTK + в качестве темы для спокойных приложений.

3
17.08.2013, 02:56
2 ответа

CMD произведенный ps или имя процесса или аргументы, переданные команде (включая первый аргумент argv[0]). Хотя это переносит некоторое отношение с путем исполняемого файла, нет никакой гарантии их, чтобы быть связанной.

На Linux:

print -r -- /proc/self/exe(:A)

На Darwin и Linux и возможно других:

lsof -ap"$$" -dtxt  -Fn | sed '2!d;s/.//;q'

Но я не знаю, насколько надежный это.

Другая эвристика:

print -r -- ${${0#-}:c:A}

$0, как Вы видят в выводе PS, содержит первый аргумент это zsh полученный (argv[0]), или при передаче сценарий как аргумент, тот аргумент.

В первом случае, обычно, (условно, нет никакой гарантии), это argv[0] был бы любой путь включая a / (относительный или абсолютный), или zsh (что-то без /) в этом случае вызывающая сторона будет искать zsh в его $PATH или его хеш-таблица команды... Если путь будет относителен, то вышеупомянутый метод будет только работать, если текущий каталог не изменился, так как zsh был вызван. Если существует нет /, метод будет только работать если zsh ищет исполняемый файл тот же путь, как вызывающая сторона сделала.

В случае сценария это - путь сценария, который будет возвращен вместо того из интерпретатора (вопреки первым двум решениям).

4
27.01.2020, 21:20
  • 1
    Спасибо! BTW, в моей системе, последние два дали различные ответы, потому что одной данной вторым является символьная ссылка; я должен был работать sudo /bin/ls -l $( whence -p -- ${0#-} ) получить истинный путь (который затем согласился с результатами lsof подход). –  kjo 17.08.2013, 03:18

Можно использовать эту команду для получения полного пути любой программы: какой cmd

Например: какой zsh

0
27.01.2020, 21:20

Теги

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