Sed在行尾之前替换空格和字符

时间:2014-11-05 00:36:57

标签: text sed spaces

我有这一行:

\\Server1\A Share & Test & Check    M

我想要这个输出:

\\Server1\A Share & Test & Check

它应该以字符而不是空格结尾(\\ Server1 \ A Share& Test& Check)

我试过了:

 sed -i "s/[ *\t[a-z]]*$//I" shares.txt

删除最后一个字母,但不删除空格。

2 个答案:

答案 0 :(得分:1)

你所追求的正则表达式是\s*[a-z]*$

sed -i "s/\s*[a-z]*$//I" shares.txt

\s适用于任何空格字符

答案 1 :(得分:1)

试试这个

echo "\\Server1\A Share & Test & Check    M" | sed 's/[\tA-Za-z]*$//g'

输出:

echo "\\Server1\A Share & Test & Check