问题:

路径名为 /home/ lxy/ hhhhh-a.bbb.cc.d (格式类型固定)

其中 现在我只想要 a.bbb.cc 这一段。

其中 hhhhh- 格式固定 ,a.bbb.cc.d 这一段长度有浮动,但前面的 a. 和后面的 .d 是固定的

解决方法:

1.如果/home/ lxy/ hhhhh-a.bbb.cc.d是文件中的字符串(即echo '/home/ lxy/ hhhhh-a.bbb.cc.d'>test.txt ),可以通过sed -n 's/.*hhhhh-\(.*\)\.d/\1/p' test.txt

2.以'-'为分隔符,用cut取第二个字段(只要路径中不包含'-'即可):echo "/home/lxy/hhhhh-a.bbb.cc.d" | cut -d'-' -f2  但该方法只能取出a.bbb.cc.d

3.为防止路径中有'-',可以先取出文件名,在使用cut:echo "/home/lxy/hhhhh-a.bbb.cc.d" | awk -F/ '{print $NF}'| cut -d'-' -f2 但该方法只能取出a.bbb.cc.d

4.echo "/home/lxy/hhhhh-a.bbb.cc.d" | awk -F'-' '{print $2}' | cut -f 1-3 -d'.'

cut

用法:cut 选项 参数

选项:

-d:指定字段的分隔符,默认的字段分隔符为“TAB”;

-f:显示指定字段的内容;

-b:仅显示行中指定字节范围的内容;

-c:仅显示行中指定字符范围的内容;

-n:与“-b”选项连用,不分割多字节字符;

--complement:显示指定字段以外的字段

--out-delimiter=<字段分隔符>:指定输出内容是的字段分割符;

指定范围的参数意义:

N-:从第N个字节、字符、字段到结尾;

N-M:从第N个字节、字符、字段到第M个(包括M在内)字节、字符、字段;

-M:从第1个字节、字符、字段到第M个(包括M在内)字节、字符、字段。

参数:可以是字符串,也可以是文件

举栗:

使用-d指定字段分隔符,使用-f获取指定字段

echo "/home/lxy/hhhhh-a.bbb.cc.d" |awk -F/ '{print $NF}'| cut -d'.' -f2

输出为:bbb

echo "/home/lxy/hhhhh-a.bbb.cc.d" | awk -F/ '{print $NF}'|cut -d'.' -f1,2

输出为:hhhhh-a.bbb

echo "/home/lxy/hhhhh-a.bbb.cc.d" | awk -F/ '{print $NF}'|cut -d'.' -f1,2,3

或echo "/home/lxy/hhhhh-a.bbb.cc.d" | awk -F/ '{print $NF}'|cut -d'.' -f1-3

输出为hhhhh-a.bbb.cc

使用--complement参数提取指定字段以外的字段

echo "/home/lxy/hhhhh-a.bbb.cc.d" | awk -F/ '{print $NF}'|cut -d'.' -f1-3 --complement

输出为 d

使用-c参数获取指定字符范围内的内容

echo "/home/lxy/hhhhh-a.bbb.cc.d" | awk -F/ '{print $NF}'|cut -c5-

h-a.bbb.cc.d

转载于:https://www.cnblogs.com/mianbaoshu/p/10948593.html

linux cut的用法相关推荐

  1. linux cut -b用法,Linux cut 命令详解

    cut 命令在Linux和Unix中的作用是从文件中的每一行中截取出一些部分,并输出到标准输出中.我们可以使用 cut 命令从一行字符串中于以字节,字符,字段(分隔符)等单位截取一部分内容出来. 在本 ...

  2. linux cut 命令,Linux cut命令的用法介绍

    Linux cut命令用于根据字段提取文件内容.文本文件没有像数据库那样的行/列,有时我们只需要单列数据.根据分隔符剪切已识别的列(例如:冒号':',分号';',逗号','等). 对于下面示例,我们采 ...

  3. linux除了cat读取文件内容,linux cut命令和cat命令以及查看文件内容命令总结

    cut-d: -f 1 /etc/passwd > /tmp/users -d用来定义分隔符,默认为tab键,-f表示需要取得哪个字段 当然也可以通过cut取得文件中每行中特定的几个字符,例如: ...

  4. Linux中find用法整理

    一.Linux中find常见用法示例 ·find    path    -option    [    -print ]    [ -exec    -ok    command ]    {} /; ...

  5. linux cut,sed与awk的使用

    本文讲述了linux系统中常用的文本提取命令cut,sed与awk的命令使用方法.借用了前辈的文章,非常感谢. cut用法: 原文链接:http://blog.csdn.net/u011003120/ ...

  6. linux常用脚本的使用方法,Linux常用命令用法100个

    Linux常用命令用法100个 发布时间:2013-05-25 13:53:27   作者:佚名   我要评论 平时用linux时,我有一个习惯就是把遇到的,比较有用,并且容易忘的命令,放到一个文本文 ...

  7. Linux下wine用法

    Linux下wine用法 下面是wine的使用方法. 一.要在Linux下运行,wine是必不可少的,所以,请将wine安装到你的系统里. 二.将你的Windows所在的分区加载到某个目录.(本文假定 ...

  8. linux md5sum 的用法(转)

    MD5算法常常被用来验证网络文件传输的完整性,防止文件被人篡改.MD5全称是报文摘要算法(Message-Digest Algorithm 5),此算法对任意长度的信息逐位进行计算,产生一个二进制长度 ...

  9. Linux export 命令用法

    Linux export 命令用法 Linux export 命令用于设置或显示环境变量. 在 shell 中执行程序时,shell 会提供一组环境变量.export 可新增,修改或删除环境变量,供后 ...

最新文章

  1. 你动、蒙娜丽莎跟着一起动,OpenCV这么用,表情口型造假更难防了
  2. FPGA锁存器、触发器、寄存器和缓冲器的区别
  3. C#学习笔记(一)变量 常量 基本数据类型 其它
  4. SAP SD-销售模式-寄售(客户寄售)
  5. 超出网络bios会话限制_如何设置网络以防止数据丢失
  6. 封装(构造方法,构造器)
  7. java图片上传被旋转,在其他大牛那看到的java手机图片上传旋转问题的解决方法...
  8. linux下的C语言开发(信号处理)
  9. 排列组合计算问题中的卡塔兰数(Catalan Number)
  10. Swift网络请求 - RXSwift + PromiseKit + Moya
  11. 联想thinkbook14+2023款和2022款区别对比评测
  12. 微信小程序创建直播间流程
  13. 蓝牙搜索显示结果到ListView(十分精简)
  14. Tcp/Udp端口对照表
  15. 制造型企业如何上云?
  16. 深度学习及并行化实现概述
  17. 手机连接Linux教程,手机密钥连接linux主机
  18. 优秀简历模板分享(前端,Java等通用模板)
  19. 操作无法完成因为已经在mysqld.exe上打开_用上iPhone 11的这个功能后,今年我第一次拿到全勤奖...
  20. 智能家居灯光控制系统

热门文章

  1. sys.argv[] 的使用详解
  2. 历届试题 打印十字图
  3. python人工智能——机器学习——数据的划分和介绍
  4. html input url,HTML Input URL name用法及代码示例
  5. cocos 时间函数需要什么引用_酱香型白酒,为什么需要长时间储存?
  6. vue 中provide的用法_聊聊Vue中provide/inject的应用详解
  7. Linux下的进程相关编程
  8. mybatis里的日志动态代理
  9. 防火墙(6)—— -d的用法
  10. python面向对象(1) —— 封装