2017-01-06 11 views
-1
pip install sphinx 
sphinx-quickstart -q -p DSPackageDocs -a Me -v 1 --ext-autodoc 
perl -i -e $'s/#sys.path.insert(0, os.path.abspath(\'.\'))/sys.path.insert(0, os.path.abspath(\'.\/DSPackage\'))/g' conf.py 

3-я строка вносит изменения в файл и заменяет текст. В частности, я заменяюРаботает в терминале, но не в сценарии

sys.path.insert(0, os.path.abspath('.')) 

с

sys.path.insert(0, os.path.abspath('./DSPackage')) 

Эта линия отлично работает в терминале в сценарии оболочки я получаю ошибку:

Syntax error: ")" unexpected

+0

Вы используете ту же оболочку в терминале и в скрипте? – choroba

+1

Является первой строкой скрипта '#!/Bin/sh'? – melpomene

+0

. Какую из них вы используете, укажите его явно как 'bash', т. Е.' #!/Bin/bash' – Inian

ответ

1

Я получаю сообщение об ошибке, если Я выполняю команду в dash. dash, похоже, не поддерживает цитаты $'...'.

Это хорошо работает в bash, и выдает различные ошибки в zsh и ksh:

Unknown regexp modifier "/D" at -e line 1, at end of line 
Unknown regexp modifier "/S" at -e line 1, at end of line 
Unknown regexp modifier "/P" at -e line 1, at end of line 
Unknown regexp modifier "/k" at -e line 1, at end of line 
Can't find string terminator "'" anywhere before EOF at -e line 1. 

Обязательно укажите правильный снаряд на первой строке сценария

#! /bin/bash 

и позвонить сценарий правильно:

/path/to/the/script.sh 

o r

+0

Спасибо! Проблема с #!/bin/bash отсутствует! – user3543214