我想做一些像 zsh 那样的事情print -r -- ...
,它只是呼应参数而不改变它们。
printf --
仍然解释指令。
答案1
通常的智慧是使用:
printf '%s\n' ....
例如:
$ printf '%s\n' "a\nb\tc"
a\nb\tc
如果您需要称为print
orsay
或pr
or any other
,请定义:
pr () { printf '%s\n' "$@"; }
并做:
$ pr "a\nb\tc"
a\nb\tc
而且(大多数时候)它会满足您的要求。如果需要,它可以扩展到涵盖更多问题,但这是一个很好的起点。