我试图传递一个函数两个变量,我想用下划线代替文件名,即空格:
directory=<path to file>
file=<name of file>
my_function "$directory/${file// /_}"
这将在bash和更高版本的ksh中工作,但是我在较旧的Solaris 9机器上工作,结果是严重的替换错误。
在旧的KSH环境中,有没有一种干净的方法来实现此功能?
您可以使用tr
:
my_function "$directory/$(printf '%s' "$file" | tr ' ' '_')"
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句