【Shell案例】【打印指定行用sed、for循环、head和tail配合使用】4、输出第5行的内容

描述
写一个 bash脚本以输出一个文本文件 nowcoder.txt 中第5行的内容。

示例:
假设 nowcoder.txt 内容如下:
welcome
to
nowcoder
this
is
shell
code

你的脚本应当输出:
is

方法1:变量定义+for循环

复制代码
#!/bin/bash
let j=0
for i in `cat nowcoder.txt`
do
    if [[ $j -eq 4 ]];
    then
        echo $i
    fi
    let j++
done
复制代码

方法2:head和tail配合使用

#!/bin/bash
head -n 5 nowcoder.txt | tail -n 1

方法3:sed方式

#!/bin/bash
sed -n "5,5p" nowcoder.txt

$n0 表示当前文件名
如果你只想看文件的前100行,可以使用head命令,如
head -100 $n0


如果你想查看文件的后100行,可以使用tail命令,如:
tail -100 $n0 或 tail -n 100 $n0


查看文件中间一段,你可以使用sed命令,如:
sed -n ‘100,200p’ $n0
这样你就可以只查看文件的第100行到第200行。

-n 处理匹配到的行
-e 命令行进行编辑


p打印匹配到的内容
=打印匹配到的行号

打印某一行,可以直接使用单个参数的sed,即

#!/bin/bash
sed -n '5p' nowcoder.txt

 

posted @   哥们要飞  阅读(155)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示