Я верю тому, что Вы ищете, bind
управляйте собой. Согласно man builtin
информационное выполнение bind <readline-command>
позволяет Вам работать один-offs, однако, я не мог добраться, это для работы как руководство говорит, что это должно..., это продолжало заставлять ключи не работать на меня; Ваш пробег может варьироваться. Я действительно находил следующие команды, которые могут быть полезны для Вас.
bind -p # Equivalent to dump-functions [machine readable]
bind -P # Equivalent to dump-functions [human readable]
bind -s # Equivalent to dump-macros [machine readable]
bind -S # Equivalent to dump-macros [human readable]
bind -v # Equivalent to dump-variables [machine readable]
bind -V # Equivalent to dump-variables [human readable]
В Примечании редактирования, на которое я хотел бы указать, насколько раздражающий случается так, что это не работает как руководство, говорится, что это должно потому что, если Вы вводите bind
и затем потребуйте у вкладки автоматического заполнения, она показывает все команды.
Я не делаю это имеет какое-либо отношение к версиям, ни проблеме со ссылками, это, вероятно, что скрипт, который это запускает просто, не обрабатывает быть названным от нескольких уровней абстракции при вызове через символьные ссылки.
Скажите, что у меня есть установка как это ссылок на ссылки на файл.
$ tree
.
|-- 1
| |-- 2
| | |-- 3
| | | |-- 4
| | | | `-- afile
| | | `-- afile -> 4/afile
| | `-- afile -> 3/afile
| `-- afile -> 2/afile
`-- afile -> 1/afile
Так, чтобы был единственный файл, 1/2/3/4/afile
и весь afile
выше цепочка ссылок друг на друга, который в конечном счете приводит к синглу afile
файл.
$ find . -ls
10890091 4 drwxrwxr-x 3 saml saml 4096 Oct 28 22:03 .
10890244 0 lrwxrwxrwx 1 saml saml 7 Oct 28 22:03 ./afile -> 1/afile
10890107 4 drwxrwxr-x 3 saml saml 4096 Oct 28 22:02 ./1
10890247 0 lrwxrwxrwx 1 saml saml 7 Oct 28 22:02 ./1/afile -> 2/afile
10890121 4 drwxrwxr-x 3 saml saml 4096 Oct 28 22:02 ./1/2
10890246 0 lrwxrwxrwx 1 saml saml 7 Oct 28 22:02 ./1/2/afile -> 3/afile
10890136 4 drwxrwxr-x 3 saml saml 4096 Oct 28 22:02 ./1/2/3
10890245 0 lrwxrwxrwx 1 saml saml 7 Oct 28 22:02 ./1/2/3/afile -> 4/afile
10890137 4 drwxrwxr-x 2 saml saml 4096 Oct 28 22:06 ./1/2/3/4
10890243 4 -rw-rw-r-- 1 saml saml 5 Oct 28 22:06 ./1/2/3/4/afile
Я могу всегда получать доступ к файлу из любой из ссылок выше его, например:
$ pwd
/home/saml/tst/97990/1
$ cat afile
blah
Я могу использовать readlink
узнать канонический путь ссылки, указывающие:
$ readlink -f afile
/home/saml/tst/97990/1/2/3/4/afile
попробуйте сделать некоторый пример, ваша система поддерживает цепочечные сим-ссылки, например cd
ln -s /bin/ls myls1
ln -s myls1 myls2
ln -s myls2 myls3
начать эксперимент:
./myls1 should work
./myls2 works or not?
./myls3 works or not?
Когда myls3 работает, ваша система поддерживает цепочечные симлинки. Я не верю, что это не так :) Тогда я думаю, что проблема не в симлинках, а в SWI-Prolog. Я думаю, что он пытается решить проблему с симлинками, потому что он хочет знать свое фичическое местоположение. Обычно это необходимо для поиска библиотек по умолчанию и других товаров. На мой взгляд, это может быть ошибка в SWI-Prolog . Может быть, она исправлена в более высокой версии. Может быть, вам стоит сообщить об этой ошибке. Может быть, любое исправление доступно.
swipl
? Если это - сценарий оболочки, выполненный это как это,bash -x swipl
и посмотрите то, что это делает. – slm♦ 29.10.2013, 06:22