0

我有数据为的平面文件

cast ( (emp_ID)  as varchar(2000) ),
cast ( (emp_name)  as varchar(2000) ),

我想,从这个文件的最后一行中删除。输出应该是:

 cast ( (emp_ID)  as varchar(2000) ),
 cast ( (emp_name)  as varchar(2000) )

我正在使用以下命令:

tail -1 select_stmnt.txt | sed 's/,/''/g' >> select_stmnt.txt

我得到的是:

  cast ( (emp_ID)  as varchar(2000) ), 
  cast ( (emp_name)  as varchar(2000) ),
  cast ( (emp_name)  as varchar(2000) )

删除,工作正常,但不是用修改后的行替换原来的行,而是附加了我不想要的。

4

2 回答 2

4

你可以试试这个:

sed '$ s/,$//g' yourInputFile

第一个美元 ($) 将用于选择最后一行。

于 2015-10-16T05:10:31.787 回答
1

用于-i就地编辑文件:

sed -i '$s/,$//' select_stmnt.txt
于 2015-10-16T05:27:24.717 回答