test.sh:
#!/bin/sh
hello="HELLO"
who="WORLD"
text="$hello $who"
test.py:
import pathlib
content = pathlib.Path('test.sh').read_text()
print(content)
我想得到";HELLO WORLD";在我的脚本py 中
您可以在"test.sh"文件中添加echo $text
然后使用捕获文件的输出
import subprocess
subprocess.run(['./test.sh'], capture_output=True)
您可以使用正则表达式,因为content
是一个字符串变量:
import pathlib
import re
content = pathlib.Path('test.sh').read_text()
print(re.search('text="(.+?)"', content))
输出:
<re.Match object; span=(37, 55), match='text="$hello $who"'>
要获得确切的text
值,可以对字符串进行切片:
import pathlib
import re
content = pathlib.Path('test.sh').read_text()
v = re.search('text="(.+?)"', content)
print(v[0][6:-1])
结果:
$hello $who