我正在尝试删除包含许多行的文件的最后一个空格.txt该文件。 我只需要删除第三列/每行之后的"仅最后一个空格"。 我的文件如下所示:
3 180 120
3 123 145
6 234 0
4 122 12
我一直在尝试使用以下脚本,但到目前为止它不起作用。有人可以帮助我吗?
#!/bin/bash
var="val1 val2 val3 "
var="${var%"${var##*[![:space:]]}"}"
echo "===$var===" <Antart_csv1_copy.txt> trimmed.txt
您可以使用 sed:
sed -i -e 's/ $//g' filename.txt
-i
将使命令就地(更改原始文件(-e 's/ $//g'
将采用正则表达式<space><endline>
并将其更改为无。修饰符g
使它适用于文件中的所有行
您可以先尝试一下,无需-i
和重定向输出:sed -e 's/ $//g' filename.txt > trimmed.txt
另一种解决方案从每行中删除所有尾随空格:
while read line; do echo "${line%%*( )}" >> trimmed.txt; done < Antart_csv1_copy.txt