适用于终端但不适用于脚本
Works in terminal but not in script
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'))
此行在 shell 脚本的终端中工作得很好我收到错误:
Syntax error: ")" unexpected
如果我在 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.
确保在脚本的第一行指定正确的shell
#! /bin/bash
并正确调用脚本:
/path/to/the/script.sh
或
cd /path/to/the
./script.sh
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'))
此行在 shell 脚本的终端中工作得很好我收到错误:
Syntax error: ")" unexpected
如果我在 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.
确保在脚本的第一行指定正确的shell
#! /bin/bash
并正确调用脚本:
/path/to/the/script.sh
或
cd /path/to/the
./script.sh