Linux Bash Shell字符串截取
#!/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字符串截取的更多相关文章
- Linux 的shell 字符串截取很有用。有八种方法。
一 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.linuxidc.com/123.htm 1 # 号截取,删除左边字符,保留右边字符. echo ${va ...
- Linux Bash Shell字符串分割substring等(转)
原文https://blog.csdn.net/wuyinggui10000/article/details/52779364 脚本开发中遇到的问题是:原java中的字符串分割操作(substring ...
- 【Linux】linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法
linux bash shell之变量替换::=句法.=句法.:-句法.-句法.=?句法.?句法.:+句法.+句法 linux bash shell之变量替换::=句法.=句法.:-句法.-句法. ...
- linux BASH shell设置字体与背景颜色
linux BASH shell下设置字体及背景颜色的方法. BASH shell下设置字体及背景颜色 echo -e "\e[31mtest\e[41m" \e[30m 将字 ...
- Linux脚本shell字符串处理
Linux脚本shell字符串处理,基本都有了,看着搜吧 TLDP教堂 shell中if条件字符串.数字比对,[[ ]]和[ ]区别 Linux 之 shell 比较运算符 Linux Shell编程 ...
- Linux Bash Shell常用快捷键
Linux Bash Shell常用快捷键 table { margin: auto } 快捷键 功能 tab 补全 ctrl + a 光标回到命令行首 ctrl + e 光标回到命令行尾 ctrl ...
- Linux bash shell All In One
Linux bash shell All In One Linux https://tinylab.gitbooks.io/shellbook/content/zh/chapters/01-chapt ...
- linux bash shell & lsof & grep & ps
linux bash shell & lsof & grep & ps lsof list all open files # lsof & grep $ lsof -P ...
- Linux shell字符串截取与拼接
一 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.linuxidc.com/123.htm 1 # 号截取,删除左边字符,保留右边字符. echo ${va ...
随机推荐
- python基础教程(三)
序列概览 Python 包含6 种内建的序列,这里重点讨论最常用的两种类型:列表和元组. 列表与元组的主要区别在于,列表可以修改,元组则不能.也就是说如果要根据要求来添加元素,那么列表可以会更好用:而 ...
- [2012-08-21]FreeBSD9.0体验记
最近在看<构建高可用Linux服务器> 由于对FreeBSD的稳定性仰慕已久,正好参照该书的指导进行体验一二. 先感谢下该书作者余大大,同时做个声明:本文中若有命令脚本涉及版权问题,请与p ...
- java调取数据库
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.S ...
- 运用jQuery写的验证表单
//运用jQuery写的验证表单 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...
- 花生壳DDNS为何不支持LetsEncrypt申请
Inspired by Let's Encrypt Community , thx to sahsanu, jsha, and orzorc. 开端 Lets Encrypt 是一款免费的网站 SSL ...
- [ASP.NET MVC]笔记(一)模型和HTML辅助方法
1.ModelState.IsValid 检验模型有效性 2.显示模型绑定(操作方法中没有参数): UpdateModel(album):模型绑定期间出错会抛出异常 TryUpdateModel ...
- poj3723 MST好题 kruskal
#include<iostream> #include<cstring> #include<cstdio> #include<algorithm> us ...
- javascript中=,==,与===的区别;以及特殊值NaN的讲解
1.在js中"="是作为赋值.var a; a=3:给a赋值为3. 2."=="称作相等,"==="被称作严格相等.当使用"== ...
- Mac系统的终端显示git当前分支
当我第一次在mac系统下使用git的时候,发现一个问题,git默认是不显示当前所在的分支名称,然后网上查找资料,找到了解决办法,终于可以显示本地当前分支,现在分享如下. 1 进入你的home目录 cd ...
- CCNA基础知识摘录
cisco设备的启动要点: 1.检测硬件(保存在rom) 2.载入软件(IOS)(保存在Flash) 3.调入配置文件(密码,IP地址,路由协议都保存在此)(此文件保存在NVRAM) 0x2102:正 ...