题解 | #shell/bash去掉空行#

去掉空行

http://www.nowcoder.com/practice/0372acd5725d40669640fd25e9fb7b0f

同上一题,输出空行的行号,该题则删除空行

# grep 正则实现
grep -v '^$' nowcoder.txt
cat nowcoder.txt | grep -v '^\s*$'

# sed 命令正则
sed '/^\s*$/d' nowcoder.txt

# awk 正则
awk '{if(! /^\s*$/) print $0}' nowcoder.txt
cat nowcoder.txt | awk '{if(!/^\s*$/) print $0}'

# tr命令首次接触
cat nowcoder.txt |tr -s "\n"
全部评论
sed '/^$/d' nowcoder.txt 这样就可以将空行删除,不太理解sed '/^\s*$/d' nowcoder.txt 为啥也可以,请大佬赐教
点赞 回复 分享
发布于 2021-08-24 20:17
sed '/正则表达式或者对应字符,字符串/d' 只要能实现目的,都可以,\s是正则元字符:匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]
点赞 回复 分享
发布于 2021-09-08 10:24

相关推荐

肥沃富饶:可能初创公司,老板不懂技术
点赞 评论 收藏
分享
评论
3
1
分享

创作者周榜

更多
牛客网
牛客企业服务