【linux】打印字符串中指定行
只打印第10行 关键在于当行数小于10时不输出。
用 head tail的关键问题是当行数小于10的时候用 head -n 10 只会打出前面的行,再用tail就错了。
所以要知道源文件一共有多少行。用wc
wc -l 显示文件一共有多少行 -w列出有多少字(英文单字) -m列出有多少字符
但是得到了这个数字怎么用呢,需要一个变量存储行数,然后用if语句处理
加:
可以用 tail -n +10 表示从第10行开始显示,这样如果没有第10行就会显示空了
下面是多种答案:
num=$(cat file.txt|wc -l)
if (( $num > 9 )); then
cat file.txt|head -|tail -
fi
STARTING=; NLINES=; cat file.txt | tail -n+${STARTING} | head -n${NLINES}
LINE_NUM=`head -n file.txt | wc -l` if (( $LINE_NUM == "" )); then
head -n file.txt | tail -n
else
echo ""
fi
# Solution
cnt=
while read line && [ $cnt -le ]; do
let 'cnt = cnt + 1'
if [ $cnt -eq ]; then
echo $line
exit
fi
done < file.txt # Solution
awk 'FNR == 10 {print }' file.txt
# OR
awk 'NR == 10' file.txt # Solution
sed -n 10p file.txt # Solution
tail -n+ file.txt|head -
困惑:
①用if[ ]就出错??
②不用变量,直接写if (( `cat file.txt|wc -l` == 10 )) 也出错??
【linux】打印字符串中指定行的更多相关文章
- Linux c字符串中不可打印字符转换成16进制
本文由 www.169it.com 搜集整理 如果一个C字符串中同时包含可打印和不可打印的字符,如果想将这个字符串写入文件,同时方便打开文件查看或者在控制台中打印出来不会出现乱码,那么可以将字符串中的 ...
- Excel中如何截取字符串中指定字符后的部分字符
1.如何给某列属性为时间整体加一个时间值: 场景一:假如我有一个excel中的某一列如下图所示,如何将该列的时间(用B代替整列)整体加一分钟呢?方法很简单,在空白单元格填写时间格式图中A所示 ...
- 1231: 删除字符串中指定的字符(Java)
WUSTOJ 1231: 删除字符串中指定的字符 题目 原题链接 Description 明天就要英语考试了,小明明正在挑灯夜战背单词.小明明发现单词很难背,背一个忘一个.经过仔细研究,小明明发现单词 ...
- 【练习】数据移动---parfile导出表中指定行:
要求: ①创建存放数据的文件: ②使用默认的bad文件生成方式: ③使用truncate选项方式. 1.准备条件: [oracle@host03 ~]$ mkdir datadump [oracle@ ...
- python3 替换字符串中指定位置字符
大家都知道字符串在python中是不可变数据类型,那么我们如何替换字符串中指定位置的字符呢? 字符串转换列表替换并转换解决: def replace_char(string,char,index): ...
- mssql sqlserver 禁止删除数据表中指定行数据(转自:http://www.maomao365.com/?p=5323)
转自:http://www.maomao365.com/?p=5323 摘要:下文主要讲述,如何禁止删除数据表中指定行数据 最近收到用户一个需求,禁止所有人删除”表A”中,ID 为1.2.3.4.5的 ...
- .NET获取Html字符串中指定标签的指定属性的值
using System.Text; using System.Text.RegularExpressions; //以上为要用到的命名空间 /// <summary> /// 获取Htm ...
- String substring(int start,int end)截取当前字符串中指定范围内的字符串
package seday01;/** * String substring(int start,int end) * 截取当前字符串中指定范围内的字符串. * java api有一个特点:通常用两个 ...
- python 统计字符串中指定字符出现次数的方法
python 统计字符串中指定字符出现次数的方法: strs = "They look good and stick good!" count_set = ['look','goo ...
随机推荐
- hdu 1008
题目意思是:给你N个数字 每个数字表示多少层楼 现在要你从0层楼开始坐电梯 一次按顺序走过这些楼层 规则是 上楼6秒 ,下楼4秒,每次到达一个楼层停5秒..... 思路:模拟 代码如下:(要注意 ...
- hdu 5166 Missing number
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5166 Missing number Description There is a permutatio ...
- poj 2887 Big String
题目连接 http://poj.org/problem?id=2887 Big String Description You are given a string and supposed to do ...
- MongoDB 数据类型
MongoDB支持许多数据类型的列表下面给出: String : 这是最常用的数据类型来存储数据.在MongoDB中的字符串必须是有效的UTF-8. Integer : 这种类型是用来存储一个数值.整 ...
- Swift弹窗
在一个ViewController中使用以下代码: let alertController = UIAlertController(title: "Game Set", messa ...
- mac下的ssh自动登陆
终端的ssh是标准的OpenSSH client 如果需要克隆会话功能,可以通过配置打开. $ cat .ssh/config Host * ControlMaster auto ControlPat ...
- 关于VS2010error RC2170 : bitmap file res\tmp1.bmp is not in 3.00 format
我们有时候向VS中的程序插入图片,会出现如下错误: 这是VS的一个bug,对于不能识别的资源,添加的时候,VS会弹出一个对话框让你填类型,这个类型其实是字符串表示,而不是像内置类型,例如整数. 解 ...
- Xcode 7遇到 App Transport Security has blocked a cleartext HTTP 错误
今天用Xcode 7 创建新项目用到 URL 发送请求时,报下面的错: “App Transport Security has blocked a cleartext HTTP (http://) r ...
- 多线程 -- NSOperation
NSOperation 此类不能直接使用 NSInvocationOperation NSBlockOperation 定义一个类继承与它 NSInvocationOperation 可以使用star ...
- 团队开发——Alpha版总结会议
本组目前存在的问题: 1.在选题的时候,题目选的比较有难度,造成后期工作量较大,实现有难度(未能正确估计项目的难度). 2.最初规划时,设计的功能较多,但是技术水平达不到,导致目前完成功能较少. 3. ...