2017-01-06 9 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 

Die dritte Zeile sucht in einer Datei und ersetzt etwas Text. Insbesondere ich ersetzenFunktioniert im Terminal aber nicht im Skript

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

mit

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

Diese Linie arbeitet völlig in Ordnung in das Terminal in der Shell-Skript bekomme ich den Fehler:

Syntax error: ")" unexpected

+0

Verwenden Sie die gleiche Shell im Terminal und im Skript? – choroba

+1

Ist die erste Zeile des Skripts '#!/Bin/sh'? – melpomene

+0

Welchen She-Bang benutzen Sie, spezifizieren Sie es explizit als 'bash', d. H.' #!/Bin/bash' – Inian

Antwort

1

Ich erhalte die Fehlermeldung, wenn Ich führe den Befehl in dash aus. dash scheint die $'...' Anführungszeichen nicht zu unterstützen.

Es OK in bash arbeitet und verschiedene Fehler in zsh und ksh aussendet:

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. 

Achten Sie auf die richtige Schale in der ersten Zeile des Skripts

#! /bin/bash 

und rufen spezifizieren das Skript korrekt:

/path/to/the/script.sh 

o r

cd /path/to/the 
./script.sh 
+0

Danke! Das Problem mit #!/bin/bash fehlte! – user3543214

Verwandte Themen