2016-09-15 3 views
0

У меня есть файл под названием client.py. Я создал символическую ссылку с именем incro использованиемСделать исполняемую символическую ссылку в Python?

ln -s client.py incro 

Как мне сделать этот скрипт исполняемым и переместить его в мой бункер (я на Linux с помощью Ubuntu, с Баш терминала), под названием incro? Так что я смогу запустить

incro 

У меня есть правильный ша-банг. Что еще мне нужно сделать?

ответ

2

Поместите ссылку в bin каталоге, а не в текущем каталоге:

ln -s $PWD/client.py ~/bin/incro 

Вы также должны иметь ~/bin в вашем $PATH, так что вы можете запускать программы, которые там.

И если сценарий уже не исполняемый файл, добавить, что:

chmod +x client.py 
+0

'ln: не удалось создать символическую ссылку '/ home/ubuntu/bin/incro': нет такого файла или каталога' – baranskistad

+0

Сначала вам нужно создать каталог' bin'. – Barmar

+0

Хорошо, не обращайте на это внимание. Я запускал 'ln -s client.py incro', а затем перемещал' incro' в '/ usr/local/bin'. Затем я запускал 'incro', и он сказал, что команды не существует. Что я делаю не так? – baranskistad

1

В Linux, чтобы сделать исполняемый файл вам нужно будет установить файл с помощью следующей команды:

chmod +x [filename] 

Это сделает файл исполняемым для владельцев корнеплоды, пользователей и групп.

Чтобы сделать исполняемый файл из любого каталога, вам необходимо убедиться, что каталог указан в вашем PATH.

echo $PATH 

покажет вам, к какому пути следует перемещать файл или символическую ссылку. Также есть способы добавить любой путь к PATH, но вы, скорее всего, найдете соглашение, чтобы добавить ваши исполняемые файлы в/usr/local/bin. Просто подтвердите, что он находится на вашем пути, используя команду выше.

+0

Это не решение всего вопроса. – baranskistad

+0

Я отредактировал ответ. Пожалуйста, дайте мне знать, есть ли что-то, чего я не хватает, которого вы искали. –

1

По умолчанию символические ссылки следуют права доступа к файлам, чтобы не сделать символическую ссылку исполняемого файла, а просто сделать свой client.py исполняемый файл ,

Команда:

ln -s client.py incro 

Создает относительную символическую ссылку, так что вы не можете просто скопировать или переместить его в другой каталог. Чтобы сделать ссылку подвижной, создайте ссылку на файл с абсолютным путем. Например:

ln -s /home/guest/client.py incro 

Или просто создать ссылку прямо в bin каталоге.