R_S*_*S_C 2 awk sed removing-whitespace
我正在尝试从 csv 文件中删除空格和制表符。(在 Linux 中通过命令行)
sed "s/[[:blank:]]\{1,\}//g" ./TRIM.csv
Run Code Online (Sandbox Code Playgroud)
通过使用上述命令,列的值/项目之间的空格被删除。
(例如,Hello World正在变成HelloWorld)
我也想替换'|' 用'~'
示例文件:
0 | null | 0 | 0 | 0 | null | null |
1 | Hello World | 0 | 0 | 0 | null | null |
Run Code Online (Sandbox Code Playgroud)
所需的输出:
0~null~0~0~0~null~null~
1~Hello World~0~0~0~null~null~
Run Code Online (Sandbox Code Playgroud)
除了“hello world”之间的空格外,所有空格都已删除,该空格是具有空格的列的值。
使用您显示的样本,您能否尝试以下操作。在 GNU 中编写和测试awk应该可以在任何awk.
awk -F'[[:blank:]]*\\|[[:blank:]]*' -v OFS="~" '{sub(/^ +/,"");$1=$1}1' Input_file
Run Code Online (Sandbox Code Playgroud)