技术改变生活

博客园 首页 新随笔 联系 订阅 管理

Linux中常用的命令

#nl  filename   使用nl命令打印文件内容并显示行号

#sed   '/nw/,$d'   filename     使用sed命令删除匹配nw至最后一行的内容

#cat  filename | sed  '/字段信息/,$!d'      使用sed的!取反,只打印匹配到的信息至最后一行的内容

#uniq -c   filename    使用uniq打印出紧挨着的重复行,c选项统计出重复的次数,d选项只打印重复的行

#cat  filename | sort -t:  -k1  -r     以:进行分割后的按照第一列来倒序排列,默认分隔符为空格

#cat  filename | tr  '[0-9]'  '[a-z]'  使用tr将所有数字替换成字母

#cat  filename  | tr  '\n'   '\t';echo     使用tr命令将换行符替换成制表符,最后一行使用echo进行换行显示

#cat filename | tr  -d  '[0-9]‘    等价于tr  -d '[0-9]' < filename  使用tr命令的-d参数删除所有的数字

#cat  filename | cut  -c  1-6   使用cut命令显示文件的第一个至第六个字符

#cat  filename  | cut  -c  1-2,4-  使用cut命令显示文件的第1-2字符,第4个至最后一个字符,使用cut命令只需看第一行数据,其余各行都是按照第一行顺序进行执行

#cat  filename | cut -d'分隔符' -f指定列    

# ifconfig ens33 | awk -F'[ ]+' 'NR==2{print $3}'      使用awk命令取出网卡ip地址

#split  -5  filename  spt    把filename文件每5行分割成一个文件,每个文件的前缀都是以spt开头

在Linux中,可以使用split 命令来分割文件,具体格式为:split [options] file [prefix].

其中 options为可选参数, 最后一个参数prefix是为分割后的文件指定文件名前缀.

-b: 根据文件大小分割,分割后文件大小可以为:k (KB), M (MB), G (GB), c (byte), w (word)等...

-l: 根据行数来分割.

-d: 指定以数字为后缀.

-a length: 指定长度为length的后缀.

file: 待分割文件.

 

命令 split -b 20k example.txt -d -a 3 split_file

表示分割文件example.txt,每个文件大小为20k, 并且以分割后文件以split_file加三位数字为前缀命名.

 

可以看到,该命令分割文件example.txt, 运行命令后多出了四个以split_file加数字为前缀的文件,且分割出来的文件大小最大为20k.

 如果想以行数分割文件,只需要把-b改为-l即可,下面命令把example.txt分割为多个文件,每个文件最多300行.

split -l 300 example.txt -d -a 3 split_file

 得到所需要大小的文件后,我们就可以继续上传文件或发送邮件的操作了。

 

Usage: split   [OPTION]...   [INPUT [PREFIX]]

 

posted on 2019-10-22 22:23  小阿峰  阅读(329)  评论(0编辑  收藏  举报