我有一个以 root 身份运行的 bash 脚本:
#!/bin/bash
/var/bin/svn_co -h $1 >> /var/log/svn/status.log
如果发生以下情况,我就有麻烦了。
/var/svn/hooks.d/post-commit -h `rm / -fr`
我想rm / -fr
删除所有`从中。
如何简单地去掉重音符?或者更好的是,如何验证作为输入提供的变量和选项?
答案1
这就是我们使用引号的原因之一。
/var/bin/svn_co -h "$1" >> /var/log/svn/status.log