当我使用
cat Variables/user-extensions.js | sed -e 's/css/XXX/'
在表单的输入文件上
storedVars["css_body"] = "css=body";
storedVars["css_main"] = "css=main";
我看到如下输出
storedVars["XXX_body"] = "css=body";
storedVars["XXX_main"] = "css=main";
但是,如果我添加> x
然后使用 vi 编辑x
我看到的文件
storedVars^[[31m[^[[m^[[31m"XXX_body"^[[m^[[31m]^[[m ^[[31m=^[[m ^[[31m"css=body"^[[m^[[31m;^[[m
storedVars^[[31m[^[[m^[[31m"XXX_main"^[[m^[[31m]^[[m ^[[31m=^[[m ^[[31m"css=main"^[[m^[[31m;^[[m
代替
storedVars["XXX_body"] = "css=body";
storedVars["XXX_main"] = "css=main";
哪个是如果我让输出进入标准输出,或者如果我只cat
输出文件而不使用 vi 编辑它,我会得到什么。我可以将cat
文件和管道连接到head
ortail
并且输出正常,没有额外的字符。
如果我 vi 源 .js 文件,我不会看到这些额外的字符。
答案1
问题在于使用我的别名猫,它添加了特殊字符。
代替
cat Variables/user-extensions.js | sed -e 's/css/XXX/' > x
使用
sed 's/css/XXX/' Variables/user-extensions.js > x