转自:http://www.cnblogs.com/kinga/p/5772566.html

Shell

第一种:

${parameter%word} 最小限度从后面截掉word
${parameter%%word} 最大限度从后面截掉word
${parameter#word} 最小限度从前面截掉word
${parameter##word} 最大限度从前面截掉word

word可以是一个具体的字符串,也可以是一个模式字符串。

例子:

str='http://www.你的域名.com/cut-string.html'

echo ${str%/*}
结果:http://www.你的域名.com

echo ${str%%/*}
结果:http:

echo ${str#*//}
结果:www.你的域名.com/cut-string.html

echo ${str##*/}
结果:cut-string.html

第二种:

${variable:n1:n2}:截取变量variable从左边起索引n1开始的n2个字符。n1表示索引,索引从0开始;n2表示截取的字符个数。

变种如下:

${variable:n1}:截取变量variable从左边起索引n1开始的所有字符。

${variable:0-n1:n2}:截取变量variable从右边起第n1个字符开始的n2个字符。

${variable:0-n1:n2}:截取变量variable从右边起第n1个字符开始的所有字符。

例子:

variable='http://www.你的域名.com/cut-string.html'

echo ${variable:0:4}
结果:http

echo ${variable:7}
结果:www.你的域名.com/cut-string.html

echo ${variable:0-15:10}
结果:cut-string

echo ${variable:0-15}
结果:cut-string.html

第三种:

借助其他shell命令,如cut

cut命令的选项主要有以下几个:

echo $variable | cut -c1-4
结果:http

echo $variable | cut -c8-
结果:www.你的域名.com/cut-string.html

echo $variable | cut -d":" -f1
结果:http

linux中shell,awk,sed截取字符串方法总结的更多相关文章

  1. linux中shell变量$#,$@,$0,$1,$2的含义

    linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...

  2. 在Linux中,如何取出一个字符串的前5位

    问: 在Linux中,如何取出一个字符串的前5位? 常用的一些方法如下: [tough@toughhou ~]$ str=abcdef [tough@toughhou ~]$ echo $str ab ...

  3. (转)Linux基础------Shell数值计算的几种方法

    Linux基础------Shell数值计算的几种方法 原文:http://blog.csdn.net/fu_wayne/article/details/21620639 在Linux下总会遇到数值计 ...

  4. Linux中Shell

    Linux中Shell Shell是什么 ​ Shell是一个命令行解释器,为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,可以用Shell来启动.挂起.停止.编写一些程序. S ...

  5. linux中shell变量$#,$@,$0,$1,$2的含义解释

    linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...

  6. linux中shell变量$#,$@,$0,$1,$2的含义解释

    linux中shell变量$#,$@,$0,$1,$2的含义解释 linux中shell变量$#,$@,$0,$1,$2的含义解释:  变量说明:  $$  Shell本身的PID(ProcessID ...

  7. Linux中shell变量$0,$?等含义

    linux中shell变量$#,$@,$0,$1,$2的基本含义: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...

  8. 【转】linux中shell变量$#,$@,$0,$1,$2的含义解释

    原文网址:http://www.cnblogs.com/fhefh/archive/2011/04/15/2017613.html linux中shell变量$#,$@,$0,$1,$2的含义解释: ...

  9. 【Shell】linux中shell变量$#,$@,$0,$1,$2的含义解释 && set 关键字使用

    linux中shell变量$#,$@,$0,$1,$2的含义解释   摘抄自:ABS_GUIDE 下载地址:http://www.tldp.org/LDP/abs/abs-guide.pdf linu ...

随机推荐

  1. HTTP协议(4):CGI

    CGI接口原理及实现(2012-12-7 Over) 1.CGI定义: CGI(CommonGateway Interface)是HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须 ...

  2. Java并发编程原理与实战十三:JDK提供的原子类原理与使用

    原子更新基本类型 原子更新数组 原子更新抽象类型 原子更新字段 原子更新基本类型:   package com.roocon.thread.t8; import java.util.concurren ...

  3. don't run elasticsearch as root.

    因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户 第一步:liunx创建新用户  adduser XXX    然后给创建的用户加密码 passwd XXX    ...

  4. Linux学习5-线程

    线程 1.1什么是线程? 在一个程序中的多个执行路线就叫做线程(thread).更准确的定义是:线程是一个进程内部的一个控制序列.   要搞清楚fork系统调用和创建新线程之间的区别.当进程执行for ...

  5. Linux基础-rpm软件包管理

    任务:挂载光盘文件到/media目录,进去/media目录下的Packages目录,查看系统已安装的所有rpm包,查看系统是否安装dhcp软件包,安装dhcp软件包,查看dhcp软件包的信息,查看dh ...

  6. reshape中的-1

    >>> a = np.array([[1,2,3], [4,5,6]]) >>> np.reshape(a, (3,-1)) # the unspecified v ...

  7. Integer to Roman & Roman to Integer

    Integer to Roman Given an integer, convert it to a roman numeral. The number is guaranteed to be wit ...

  8. python 结构化数据解析

    # -*- coding: utf-8 -*- # @Time : 2018/8/31 14:32 # @Author : cxa # @File : glomtest.py # @Software: ...

  9. 安装mysql5.5的时候出现Error Nr.1045

    解决办法: 1.删除注册表几个键值:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL HKEY_L ...

  10. poj3636

    题意:每个物品有两个属性:长和宽(长宽不可互换).如果一个物品的长和宽均大于另一个物品,则这个物品可以罩住另一个物品,用这种罩住物品的方法将物品分组,一组之内的物品可以一个罩住一个的全部罩起来.问最少 ...