我有一个脚本,它基本上是一个可执行文件在不同机器上的相同名称的包装。为了举例,我会在这里包装printf。我当前的脚本如下所示:防止ssh破坏shell脚本参数
#!/bin/bash
ssh [email protected] printf "[email protected]"
不幸的是,如果其中一个参数包含空格,我期望以下命令给出相同的输出。:
~$ ./wrap_printf "%s_%s" "hello world" "1"
hello_world1_
~$ printf "%s_%s" "hello world" "1"
hello world_1
当涉及(逃逸)换行符时,问题变得更糟。我在这里如何正确地逃避我的论点?
这将工作,谢谢。我会发布一个额外的答案,这也解决了报价问题。 – Ondergetekende