#!/bin/bash

#定义变量赋值时等号两边不能有空格,否则会报命令不存在  

# 运行shell脚本两种方式
# 1、作为解释参数 /bin/sh test.sh ;  2、作为可执行文件 chmod +x ./test.sh
blog_url='http://www.cnblogs.com/Bighua/p/7535900.html'
# 1、 #号截取,从左往右删除从0开始到第一个匹配条件('//')部分,保留剩下部分
echo ${blog_url#*//}
#运行结果 如下  www.cnblogs.com/Bighua/p/7535900.html

#2、  ##号截取,从左往右删除从0开始到最后一个匹配条件('/')部分,保留剩下部分
echo ${blog_url##*/}
#运行结果如下  7535900.html

#3、 %号截取,从右往左删除从#blog_url开始到第一个匹配条件('/')部分,保留剩下部分
echo ${blog_url%/*}
# 运行结果如下 http://www.cnblogs.com/Bighua/p

#4、 %%号截取,从右往左删除从#blog_url开始到最后一个匹配条件('/')部分,保留剩下部分
echo ${blog_url%%/*}
# 运行结果如下 http:

#5、从左边第几个开始截取几个字符
echo ${blog_url:0:7}
# 运行结果如下 http://

#6、从左边第几个字符开始到结束
echo ${blog_url:7}
# 运行结果如下 www.cnblogs.com/Bighua/p/7535900.html

#7、从右边起数第几个字符为起点,从左往右截取几个字符
echo ${blog_url:0-7:2}
# 运行结果如下 00

#8、从右起第几个字符开始为起点,一直到结尾
echo ${blog_url:0-4}
# 运行结果 html

Linux Bash Shell字符串截取的更多相关文章

  1. Linux 的shell 字符串截取很有用。有八种方法。

    一 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.linuxidc.com/123.htm 1  # 号截取,删除左边字符,保留右边字符. echo ${va ...

  2. Linux Bash Shell字符串分割substring等(转)

    原文https://blog.csdn.net/wuyinggui10000/article/details/52779364 脚本开发中遇到的问题是:原java中的字符串分割操作(substring ...

  3. 【Linux】linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法

    linux bash shell之变量替换::=句法.=句法.:-句法.-句法.=?句法.?句法.:+句法.+句法   linux bash shell之变量替换::=句法.=句法.:-句法.-句法. ...

  4. linux BASH shell设置字体与背景颜色

    linux BASH shell下设置字体及背景颜色的方法. BASH shell下设置字体及背景颜色  echo -e "\e[31mtest\e[41m"  \e[30m 将字 ...

  5. Linux脚本shell字符串处理

    Linux脚本shell字符串处理,基本都有了,看着搜吧 TLDP教堂 shell中if条件字符串.数字比对,[[ ]]和[ ]区别 Linux 之 shell 比较运算符 Linux Shell编程 ...

  6. Linux Bash Shell常用快捷键

    Linux Bash Shell常用快捷键 table { margin: auto } 快捷键 功能 tab 补全 ctrl + a 光标回到命令行首 ctrl + e 光标回到命令行尾 ctrl ...

  7. Linux bash shell All In One

    Linux bash shell All In One Linux https://tinylab.gitbooks.io/shellbook/content/zh/chapters/01-chapt ...

  8. linux bash shell & lsof & grep & ps

    linux bash shell & lsof & grep & ps lsof list all open files # lsof & grep $ lsof -P ...

  9. Linux shell字符串截取与拼接

    一 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.linuxidc.com/123.htm 1  # 号截取,删除左边字符,保留右边字符. echo ${va ...

随机推荐

  1. python基础教程(三)

    序列概览 Python 包含6 种内建的序列,这里重点讨论最常用的两种类型:列表和元组. 列表与元组的主要区别在于,列表可以修改,元组则不能.也就是说如果要根据要求来添加元素,那么列表可以会更好用:而 ...

  2. [2012-08-21]FreeBSD9.0体验记

    最近在看<构建高可用Linux服务器> 由于对FreeBSD的稳定性仰慕已久,正好参照该书的指导进行体验一二. 先感谢下该书作者余大大,同时做个声明:本文中若有命令脚本涉及版权问题,请与p ...

  3. java调取数据库

    import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ...

  4. 运用jQuery写的验证表单

    //运用jQuery写的验证表单 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

  5. 花生壳DDNS为何不支持LetsEncrypt申请

    Inspired by Let's Encrypt Community , thx to sahsanu, jsha, and orzorc. 开端 Lets Encrypt 是一款免费的网站 SSL ...

  6. [ASP.NET MVC]笔记(一)模型和HTML辅助方法

    1.ModelState.IsValid    检验模型有效性 2.显示模型绑定(操作方法中没有参数): UpdateModel(album):模型绑定期间出错会抛出异常 TryUpdateModel ...

  7. poj3723 MST好题 kruskal

    #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> us ...

  8. javascript中=,==,与===的区别;以及特殊值NaN的讲解

    1.在js中"="是作为赋值.var a;  a=3:给a赋值为3. 2."=="称作相等,"==="被称作严格相等.当使用"== ...

  9. Mac系统的终端显示git当前分支

    当我第一次在mac系统下使用git的时候,发现一个问题,git默认是不显示当前所在的分支名称,然后网上查找资料,找到了解决办法,终于可以显示本地当前分支,现在分享如下. 1 进入你的home目录 cd ...

  10. CCNA基础知识摘录

    cisco设备的启动要点: 1.检测硬件(保存在rom) 2.载入软件(IOS)(保存在Flash) 3.调入配置文件(密码,IP地址,路由协议都保存在此)(此文件保存在NVRAM) 0x2102:正 ...