printf %q 应该对字符串进行引用。但是,当它在脚本中被执行时,会删除空格。
这个命令:
这个命令:
printf %q "hello world"
输出:
hello\ world
这是正确的。
这个脚本:
#!/bin/bash
str="hello world"
printf %q $str
输出:
helloworld
这是错误的。
如果确实期望这样的行为,那么在脚本中有哪些替代选择可以引用包含任何字符的字符串,以便被调用程序可以将其转换回原始形式?
谢谢。
软件:GNU bash,版本4.1.5(1)-release(i486-pc-linux-gnu)
编辑:已解决,谢谢。