原
2016年08月12日 20:45:40 1出现1 阅读数:29362 标签: shell cut 正则表达式 更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011003120/article/details/52190187
cut命令是一个选取命令,其功能是将文件中的每一行”字节” ”字符” ”字段” 进行剪切,选取我们需要的,并将这些选取好的数据输出至标准输出
cut -[n]b file
cut -c file
cut -d[分隔符] -f[域] file
-b(bytes) :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。
-c(characters) :以字符为单位进行分割。
-d :自定义分隔符,默认为制表符。
-f(filed) :与-d一起使用,指定显示哪个区域。
-n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List 参数指示的
范围之内,该字符将被写出;否则,该字符将被排除。
新建一个test1.txt,如下
557adfhg
bcd5464b
135465453456
233546576
[root@localhost shell]#
新建一个test2.txt,如下
[root@localhost shell]# cat test2.txt
星期一
星期二
星期三
星期四
星期五
星期六
星期日
[root@localhost shell]#
如下,只剪切txt中的每一行的第一个字节
[root@localhost shell]# cut -b 1 test1.txt
5
b
1
2
[root@localhost shell]#
剪切多个字符有很多方式,
如 -b 1,3,5 //剪切每一行第 1 3 5个字符 (示例1)
如 -b 1-5 //剪切每一行第 1-5 个字符 (示例2)
如 -b -5 //剪切每一行第 1-5 个字符 (示例3)
如 -b 3- //剪切每一行第 3个字符以后的 (示例4)
示例1:
[root@localhost shell]# cut -b 1,3,5 test1.txt
57d
bd4
156
234
[root@localhost shell]#
示例2:
[root@localhost shell]# cut -b 1-5 test1.txt
557ad
bcd54
13546
23354
[root@localhost shell]#
示例3:
[root@localhost shell]# cut -b -5 test1.txt
557ad
bcd54
13546
23354
[root@localhost shell]#
示例4:
[root@localhost shell]# cut -b 3- test1.txt
7adfhg
d5464b
5465453456
3546576
[root@localhost shell]#
首先按照上面的例子对test2.txt进行操作,看有什么现象
[root@localhost shell]# cut -b 2 test2.txt
�
�
�
�
�
�
�
[root@localhost shell]#
出现了乱码的现象,因为-b 只是针对字节进行裁剪,对一个汉字进行字节裁剪,得到的结果必然是乱码,若想使用 -b 命令对字节进行裁剪,那么则需要使用 -n 选项,此选项的作用是取消分割多字节字符。
[root@localhost shell]# cut -nb 3 test2.txt
星
星
星
星
星
星
[root@localhost shell]# cut -nb 3,6 test2.txt
星
星期
星期
星期
星期
星期
星期
[root@localhost shell]# cut -nb 3,6,9 test2.txt
星期
星期二
星期三
星期四
星期五
星期六
星期日
[root@localhost shell]# cut -nb 3,6,9,12 test2.txt
星期一
星期二
星期三
星期四
星期五
星期六
星期日
[root@localhost shell]#
-c的作用就是剪切字符,和上面的 -nb 有些类似
[root@localhost shell]# cut -c 1 test2.txt
星
星
星
星
星
星
[root@localhost shell]# cut -c 2 test2.txt
星
期
期
期
期
期
期
[root@localhost shell]# cut -c 1-3 test2.txt
星期
星期二
星期三
星期四
星期五
星期六
星期日
[root@localhost shell]#
上面的-b -c 只是针对于格式固定的数据中剪切,但是对于一些格式不固定的,就没有办法获取到我们想要的数据,因此便有了 -f 域的概念。
示例1:
[root@localhost shell]# cat /etc/passwd | head -n 3
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
[root@localhost shell]#
例如将上面的第一个 : 前面的字符给剪切出来,那么我们就可以使用 -d 命令,指定其分割符为 : 然后再选取第一个域内的内容即可,如下
[root@localhost shell]# cat /etc/passwd | head -n 3 | cut -d : -f 1
root
bin
daemon
[root@localhost shell]#
示例2:
剪切ip地址,如下:
[root@localhost shell]# ifconfig eth0 | grep "inet addr"
inet addr:192.168.1.199 Bcast:192.168.1.255 Mask:255.255.255.0
[root@localhost shell]# ifconfig eth0 | grep "inet addr" | cut -d : -f 2
192.168.1.199 Bcast //以 : 为分隔符,选取第二个域里面的内容,输出
[root@localhost shell]# ifconfig eth0 | grep "inet addr" | cut -d : -f 2 | cut -d ' ' -f 1
192.168.1.199 //以空格为分割符,选取第一个域内的内容,输出
[root@localhost shell]#
菜鸟一枚,如有错误,多多指教。。。
æ³å¯¹ä½è说ç¹ä»ä¹
添加代码片
还能输入1000个字符
yishu3576: 加油!! 很优秀.(04-16 12:59#3楼)举报回复
qq_39664126: 相当不错,很详细(09-11 20:10#2楼)举报回复
排骨瘦肉丁: 简单明了,求转载(03-01 17:07#1楼)举报回复
cut 命令是一个选取命令,是处理一行数据的命令 cut [-c] file | cut [-df] file| cut [b] file cut命令是从文件中的每一行进行字节,字符和字段的...
Shell基础(四):正则表达式、cut、awk、sed命令
前言: 正则表达式是描述字符排列和匹配模式的一种语法规则。主要用于字符串的模式分割、匹配、查找及替换。(主要为了模糊匹配) 1、正则表达式与通配符区别 ①通配符(* ? [])用来匹配符合条件的...
Linux:cut命令详解cut文件内容查看显示行中的指定部分,删除文件中指定字段显示文件的内容,类似于下的type命令。说明该命令有两项功能,其一是用来显示文件的内容,它...
cut:用来显示行中的指定部分,删除文件中指定字段。 语法: cut [ 选项 ] [ 参数 ] 选项: -d:指定字段的分隔符,默认的字段分隔符为“TAB” -f:显示指定字段的内容 -...
*版权证明: 只允许上传png/jpeg/jpg/gif格式的图片,且小于3M *详细原因: 取 消 提 交 cut命令使用大全 3积分 立即下载 ...
linux cut命令 使用+解析(实例) - 程序员宅基地
正如其名,cut的工作就是“剪”,具体的说就是在文件中负责剪切数据用的。cut是以每一行为一个处理对象的,这种机制和sed是一样的 剪切依据 cut命令主要是接受三...
文章标签: cut命令 个人分类: Linux命令 相关热词: 函数cut cut匹配 cut—d cut实例 qcut和cut 上一篇egrep命令 下一篇tac命令 unix...
cut是一个选取命令,就是将一段数据经过分析,取出我们想要的。一般来说,选取信息通常是针对“行”来进行分析的,并不是整篇信息分析的。 (1)其语法格式为: cut [-bn] [file] ...
对cut命令的学习记录!... cut是一个很简单的命令,但是却是很实用的一个linux命令。 cut将输入流以行为单位,以一定的条件切割,最后将结果打印在标准输出(stdout)。...
cut 用法介绍: 先举个例子 cut -c 1 -d ':' --output-delimiter=$'\t' /etc/passwd 1、cut 顾名思义他要截取一行的某段或者某几...
Linux下cut命令用法详解 原创:frozen_sucker(冰棍)有时我们经...
相关热词
linux》 》linux linux的 linux【】 linux的和
没有更多推荐了,返回首页
粉丝
39
喜欢
21
评论
12
等级:
访问:
17万+
积分:
1984
排名:
2万+
勋章:
持之以恒
授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
展开
展开
请扫描二维码联系客服
400-660-0108
QQ客服 客服论坛
2018 CSDN版权所有 京ICP证09002463号
CSDN APP
举报内容:
linux cut用法
举报原因:
色情 政治 抄袭 广告 招聘 骂人 其他
原文地址:
原因补充:
最多只允许输入30个字
文章浏览阅读5.6k次,点赞5次,收藏16次。前言什么是csv文件呢?百度百科上说 CSV是逗号分隔值文件格式,也有说是电子表格的,既然是电子表格,那么就可以用Excel打开,那为什么要在Android中来读取这个.csv格式的文件呢?因为现在主流数据格式是采用的JSON,但是另一种就是.csv格式的数据,这种数据通常由数据库直接提供,进行读取。下面来看看简单的使用吧正文首先还是先来创建一个项目,名为ReadCSV准备.csv格式的文件,点击和风APILocationList下载ZIP,保存到本地,然后解压,这个时候在你的项目文件中新建_android 读取csv
文章浏览阅读810次。Spring Cloud Ribbon Rule _spring cloud ribbon原理
文章浏览阅读805次。spring bean的生命周期(1)实例化Bean:对于BeanFactory容器,当客户向容器请求一个尚未初始化的bean时,或初始化bean的时候需要注入另一个尚未初始化的依赖时,容器就会调用createBean进行实例化。对于ApplicationContext容器,当容器启动结束后,通过获取BeanDefinition对象中的信息,实例化所有的bean。(2)设置对象属性(依..._springbean的生命周期 csdn
文章浏览阅读3.8w次,点赞53次,收藏324次。vi编辑器的使用(内附快捷键的使用)(超详细)JunLeon——go big or go home前言:vi编辑器是Linux系统下标准的编辑器。那么简单的理解,就像是Windows下的记事本。补充:vim是vi的升级版,代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。一、vi 命令的使用命令格式: vi 文件名示例: vi a.txt注意:直接输入vi,可以查看vi的版本等信息,还可以直接编辑,但是退出时需要加上文件名,例如 :wq a.tx_linux中vi编辑器的使用
文章浏览阅读958次。脉冲神经网络(SNN-SpikingNeuronNetworks)经常被誉为第三代人工神经网络。第一代神经网络是感知器,它是一个简单的神经元模型并且只能处理二进制数据。第二代神经网络包括比较广泛,包括应用较多的BP神经网络。但是从本质来讲,这些神经网络都是基于神经脉冲的频率进行编码(ratecoded)。脉冲神经网络,其模拟神经元更加接近实际,除此之外,把时间信息的影响也考虑其中。_为什么说脉冲神经网络是感知机、前馈网络之后的第三代网络?
文章浏览阅读1.2k次,点赞5次,收藏24次。相对于常见且直观的RGB颜色编码,YUV的产生自有其意义,它基于人眼对亮度比色彩的敏感度更高的特点,使用Y、U、V三个分量来表示颜色,并通过降低U、V分量的采样率,尽可能保证图像质量的情况下,做到如下3点:占用更低的存储空间数据传输效率更高兼容黑白与彩色显示具体是怎么做到的,本博文一一讲解_yuv
文章浏览阅读1.4w次,点赞8次,收藏40次。1. 名词 名词可以分为专有名词(Proper Nouns)和普通名词 (Common Nouns),专有名词是某个(些)人,地方,机构等专有的名称,如Beijing,China等。普通名词是一类人或东西或是一个抽象概念的名词,如: book,sadness等。普通名词又可分为下面四类: 1)个体名词(Individual Nouns):表示某类人或东西中的个体,如:gun。 2)集体..._英语基础语法
文章浏览阅读1.3k次,点赞2次,收藏14次。rootfs有两种格式:nfs方式启动的文件夹形式的rootfs和用来烧录的镜像形式的rootfs。一、busybox移植1、busybox下载busybox是一..._busybox mount
文章浏览阅读8.6k次,点赞11次,收藏20次。今天在学习狂神的vue实战上手的时候运行项目就死了,配置了半天终于好了第一个错误:Module build failed: TypeError: loaderContext.getResolve is not a functionsass-loader版本太高 解决:(1和2选一个)修改配置文件,重新安装//1.修改sass-loader的版本为^7.3.1//2.重新安装配置环境npm install卸载当前,重新下载// 卸载当前版本npm uninstall sass_sass loader
文章浏览阅读1.7k次,点赞5次,收藏12次。1、什么是算术运算?什么是关系运算?什么是逻辑运算?算术运算:即“四则运算”,是加法、减法、乘法和除法四种运算的统称;关系运算:所谓“关系运算”就是“比较运算”,将两个数值进行比较,判断其比较的结果是否符合给定的条件;逻辑运算:逻辑运算又称布尔运算,有与、或、非三种基本逻辑运算;2、C语言中如何表示“真”和“假”?系统如何判断一个量的“真”和“假”?C语言编译系统在表示逻辑运算结..._1、什么是算术运算?什么是关系运算?什么是逻辑运算?
文章浏览阅读65次。iptables介绍和禁icmpnetfilter --> iptables 防火墙名字是netfilter iptables是命令1.filter(过滤包,用的最多的,)内建三个链: 1.INPUT作用于进入本机的包 2.OUTPUT作用于本机送出的包 3.FORWARD作用于那些跟本机无关的包2.nat (主要用处是..._linux iptables 计数器 实现在哪
文章浏览阅读1.1w次,点赞19次,收藏89次。Win7/10-Anaconda3-【Python3.7】详细安装教程一.资源下载二.安装过程2.1 详细过程2.2 环境变量三.检查是否安装成功3.1 检查开始菜单3.2 cmd控制台检查一.资源下载第一种方式(镜像下载)由于Anaconda3-python3.7属于老版本的,所以 Anaconda官网已经不存在了,大家可以去清华镜像下载自己所需要的,为什么去清华镜像下载呢?因为下载的快呀~链接: 清华镜像-Anaconda3-python3.7-5.3.1这个版本.第二种方式这个_python3.7版本的anaconda