2010-11-23 4 views
0

Предположим, что я нахожусь в ~/programming/ass1, а исполняемый файл находится в ~/programming/ass1/seattle/seattle_repy/repy.py.Создать символическую ссылку на программу

Я попытался создать символическую ссылку, как так

ln -s seattle/seattle_repy/repy.py repy 

, чтобы иметь возможность ввести

python repy restrictions.test example.1.1.repy 

вместо

python seattle/seattle_repy/repy.py restrictions.test example.1.1.repy 

Но это не сработало (я получаю " python: невозможно открыть файл '/ home/philipp/Desktop/Uni/NTM/UE/Uebungsblatt 3/safe_check.py': [Errno 2] Нет такого файла или каталога "). Таким образом repy.py не находит safe_check.py.

Возможно ли это вообще?

Приветствия, Philipp

+0

WHERE is safe_check.py и как вы это называете – Mark 2010-11-23 23:21:24

+0

Это также в сиэтле/seattle_repy /, и это называется repy.py. – 2010-11-23 23:57:37

ответ

1

Вам нужно Frob sys.path добавить путь, содержащий модули, но это, вероятно, проще сделать скрипт, который вызывает exec python ~/programming/ass1/seattle/seattle_repy/repy.py.

+0

Спасибо за подсказку. Я решил это с помощью сценария bash в ~/programming/ass1/repy.sh

 #!/bin/bash exec python ~/programming/ass1/seattle/seattle_repy/repy.py $1 $2 
2010-11-24 00:28:38

0

Спасибо за советы Игнасио и Марк. я решил его с помощью следующего сценария Баш в ~/программирование/ass1

 
#!/bin/bash 
exec python ~/programming/ass1/seattle/seattle_repy/repy.py [email protected] 

Чтобы, наконец, получить то, что я хочу, я скопировал его в/USR/бен и создал символическую ссылку на него:

sudo cp repy.sh /usr/bin/ 
sudo ln -s /usr/bin/repy.sh /usr/bin/repy 

Теперь я могу просто сказать repy restrictions.test example.2.1.repy, и это сработает.

Смежные вопросы