如果我们得到这个命令行:
python file.py --gsgds dsgsdg --dg dgdg --dg 'gdgd'
现在,假设我们想打破这个命令,在它运行的时候运行另一个命令,类似于
python file.py --gsgds dsgsdg --dg dgdg --dg '`sleep 10`'
当我尝试在两个引号之间添加sleep 10
时,它不起作用。请记住,我必须打断两个引号之间的命令。('[inter here]'(
有什么想法吗?
举个例子,我们在终端中运行bash
shell。bash shell中有几个字符具有特殊意义。您可以在bash手册中阅读更多内容。
以bash
中的;
为例。使用;
,您可以在python命令之后轻松地运行sleep 10
。有一种方法:
python file.py --gsgds dsgsdg --dg dgdg --dg ''; sleep 1; echo 'Done'
在第三个arg中传递'; sleep 1; echo 'Done
。
有些shell增加了对哪些字符可以/不能使用的限制,所以由您来尝试什么是有效的。