伙计们:
向 awk 子命令传递包含最后一个字段中的 + 符号的字符串时,我遇到了问题。我正在尝试输出记录中除了最后一个字段之外的所有字段,而没有尾随字段分隔符。例如:
echo "dog cat fish hamster" | awk 'sub(FS $NF, x)'
这产生了“狗猫鱼”的期望输出
echo "dog cat fish +hamster" | awk 'sub(FS $NF, x)'
这会产生似乎没有输出的东西。
echo "dog +cat fish hamster" | awk 'sub(FS $NF, x)'
这也产生了“狗+猫鱼”的预期输出
我正在使用 awk 解析具有一个或多个源目录和一个目标目录的配置文件,以用于通过 scp 传输文件。一些目标目录有一个+,例如/app/tgv+/in,由于遗留代码,我无法更改挂载点。只有当 + 出现在最后一个字段中时,才会出现问题。如果您能帮助我确定我是否做错了什么,或者这只是 awk 字符串解析器的问题,我将不胜感激。非常感谢您的帮助。
DGC