PWD
当当前路径包含空格时,我遇到了变量上发生的最烦人的问题。我的代码看起来有点像这样:
mycommand |sed -E '
s|mystuff|replacement| ;
s|'$(pwd)'|replacement| ;
'
这很好用,除非当前路径包含空格字符。如果是,$(pwd)
则扩展为
'mypath/带空格'而不仅仅是
mypath/带空格
这会导致 sed 表达式混乱(因为额外的引号):
sed: 1: "s|mypath/with": 未终止的替代模式
我注意到像这样扩展 pwd 无济于事${PWD//\'/}
:
关于如何解决这个问题的任何想法?