iDe*_*Dev 0 unix linux git perl escaping
我试图从perl中执行以下unix命令
`git log --pretty=format:%H | grep $id | wc -l`;
Run Code Online (Sandbox Code Playgroud)
我一直在说错误
sh: -c : syntax error near unexpected token '|'
sh -c : '| wc -l'
Run Code Online (Sandbox Code Playgroud)
我该如何解决这个错误
问题是你有123<NEWLINE>而不是123in $id,所以你将以下内容传递给shell:
git log --pretty=format:%H | grep 123
| wc -l
Run Code Online (Sandbox Code Playgroud)
代替
git log --pretty=format:%H | grep 123 | wc -l
Run Code Online (Sandbox Code Playgroud)
修复该值$id.最好的方法可能是通过chomp.
| 归档时间: |
|
| 查看次数: |
357 次 |
| 最近记录: |