awk或者sed识别和替换数据中最后一列的缺失值(转载)
###########################################################################
目標(biāo):
1,2,3,4,5,6,7,8,9,0,
替換成:
1,2,3,4,5,6,7,8,9,0,?
######################QQ群中的方案#####################################################
?
sed方案如下:
echo "1,2,3,4,5,6,7,8,9,0," | sed 's#$#?#'(最后一欄強(qiáng)制替換成"?")
echo "1,2,3,4,5,6,7,8,9,0" | sed 's#,$#,?#'(檢測最后兩欄是", "替換成",?")
?
?$表示文件最后一行
#是定界符
來自:
QQ群:302706076
中的大佬:
3456424
提供
########################CSDN論壇中的方案##################################################
sed?-i?'s/,$/,?/g'?aaa.txt??這個(gè)直接修改目標(biāo)文件,把以?,?結(jié)尾的替換為?,?
sed?-n?'s/,$/,?/g;p'?aaa.txt??修改后輸出,不修改目標(biāo)文件
這個(gè)方案和上面的類似,主要是把定界符換了一下
###########################################################################
awk方案如下:
$?cat?data.txt
1,2,3,4,5,6,7,8,
1,2,3,4,5,6,7,8,9
1,2,3,4,5,6,7,8,9,10,
1,2,3,4,5,6,7,8,9,10,11
1,2,3,4,5,6,7,8,9,10,11,12,
1,2,3,4,5,6,7,8,9,10,11,12,13??
1,2,3,4,5,6,7,8,9,10,11,12,13,14,??
$?awk?'{if?($0?~?/,[?\t]*$/)?{printf("%s?\n",?$0)}?else?{print}}'?data.txt
1,2,3,4,5,6,7,8,?
1,2,3,4,5,6,7,8,9
1,2,3,4,5,6,7,8,9,10,?
1,2,3,4,5,6,7,8,9,10,11
1,2,3,4,5,6,7,8,9,10,11,12,?
1,2,3,4,5,6,7,8,9,10,11,12,13??
1,2,3,4,5,6,7,8,9,10,11,12,13,14,???
?
?
總結(jié)
以上是生活随笔為你收集整理的awk或者sed识别和替换数据中最后一列的缺失值(转载)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: tensorflow中的log中数字的含
- 下一篇: *** line xxxx of `f