我正在使用(或尝试使用)sed指令从文本行中删除前导和尾随空格和/或空行...
sed 's/^[ \t]*//;s/[ \t]*$//;/^$/d'
它正在工作,但它似乎也正在从我的文本中删除反斜杠。
例如,使用输入字符串:test\\\test
,结果为:test\test
我认为这是可以避免的,但我正在努力。任何帮助将非常感激。 作为参考,我将其称为AppleScriptObjC
中的shell脚本由于
安迪
答案 0 :(得分:0)
这不是sed。你忘了引用你的变量吗?
$ str='test\\\test'
$ echo "$str"
test\\\test
$ sed 's/^[ \t]*//;s/[ \t]*$//;/^$/d' <<< "$str"
test\\\test
顺便说一下,我使用[[:blank:]]
代替[ \t]
答案 1 :(得分:0)
您可能会发现这更简单,更健壮:
awk 'NF { gsub(/^[[:space:]]+|[[:space:]]+$/,""); print }'