Linux下字符串的截取

第一种方法:利用键盘上#$%三个键之间的前后关系

${varible##*string}  从左向右截取最后一个string后的字符串

${varible#*string}  从左向右截取第一个string后的字符串

${varible%%string*}  从右向左截取最后一个string后的字符串

${varible%string*}  从右向左截取第一个string后的字符串

eg:

从末尾除去特定子字符串,不必使用"*"字符串

eg:

第二种方法:${varible:start:length}截取从下标start开始的length个字符串

eg:

得到字符串长度:echo ${#varible}

eg:

或者expr length "$varible"

实例:

运行之前,需要输入命令chmod 755 mystr_cut.sh生成可执行文件

${1##*.}——>$1是传给脚本的第一个命令行自变量,$2是传给脚本的第二个命令行自变量,以此类推

第三种方法:运用工具cut

cut命令用于从文件或标准输入中读取内容并截取每一行的特定部分,发送到标准输出

截取方式:

1.按字符位置

2.按字节位置

3.使用一个分隔符将一行分割成多个field,并提取指定的fields

时间: 2024-10-17 10:40:08

Linux下字符串的截取的相关文章

Linux下实现字符串截取方法总结

Linux下实现字符串截取,大体上可以分为两种,使用命令实现截取,使用工具实现截取.具体截取方式如下: a.#截取,可以实现删除左边字符,保留右边字符 从左边第一个</>开始,删除</>及之前的所有字符 str=http://www.baidu.com/index.html echo ${str#*/}        # right first / 输出:      /www.baidu.com/index.html b.##截取,可以实现删除左边字符,保留右边字符 从最右边的&l

linux下利用echo命令输出带颜色以及带字体格式的字符串

echo输出颜色字体:格式 例: echo  –e  "\033[31m被改变字体颜色的字符\033[0m" 其中\033[31m开始, *其中31(3开头控制前景色)中的1是红色,将此数值替换为2是绿色,3棕色,4蓝色,5紫色,6青绿色 *背景色控制由4开头的字符串 *单字符设置字体(1为粗体:4为下划线:5为闪烁:7反转前景色.背景色) 例:36:41:1 \033[0m结束 格式如下(#号代表数字,其中3#;4#;#可以只写一项或几项!一定要有结束字符,否则终端以后显示的字符都是

linux下查找某个目录下包含某个字符串的文件

有时候要找一些字符串,但是又不知道在哪个文件,只记得一些字符串 那么如何在linux下寻找包含某段文字的文件呢? 强大的find命令可以帮你完成不可能的任务. 比如我只记得我的程序里包含唯一的字符串“SMS_ISSEND”,于是: 查找目录下的所有文件中是否含有某个字符串 find .|xargs grep -ri “SMS_ISSEND” 查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名 find .|xargs grep -ri “SMS_ISSEND” -l

Linux shell字符串截取与拼接

一 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.hao.com/123.htm 1  # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.hao.com/123.htm . 2  ## 号截取,删除左边字符,保留右边字符. echo ${var##*/} ##*/ 表示从左边开始删除最后(最

linux下精确替换某个字符串

1.linux下精确替换某个字符串 sed -i 's/\<old\>/new/g' filename.txt 2.举例: 2.1有个文件名为filename.txt,内容如下: newdalsad dsadsaold old dnw new 2.2 将精确查找到的old替换为new sed -i 's/\<old\>/new/g' filename.txt 那么替换后内容如下: newdalsad dsadsaold new dnw new 原文地址:https://www.cn

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

假设有变量 var=http://www.aaa.com/123.htm 1. # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.aaa.com/123.htm 2. ## 号截取,删除左边字符,保留右边字符. echo ${var##*/} ##*/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符 即删除 http:

linux下input event事件,可以用后台截取键盘按下的键值,后台截取数据.....input.h

如何读取Linux键值,输入子系统,key,dev/input/event,dev/event,C语言键盘? 这里先上一段代码,自己拿到linux系统运行就可以,注意代码中keys_fd = open("/dev/input/event2", O_RDONLY);      这里去你的/dev/input/event2的event事件,去查看你的键盘事件是那一个,如果是event3那么你改成event3好了.这里给一个命令你去查看 cat  /proc/bus/usb/devices

Linux下的经典软件-史上最全

前言 从2012年接触Linux系统以来就被Linux系统所吸引,2个月后便完全抛弃了Windows.在这2年的时间里,我尝试了很多Linux发行版: Gentoo, Fedora, Ubuntu, Debian等.在这些系统中又尝试了很多种软件,这里根据自己的使用经验并结合网上的一些资料,对Linux下常用的软件进行整理,供大家参考,希望能帮助到大家.每款软件都有它的优缺点,适合自己的才是最好的.在这篇文章中我是按自己的喜好推荐给大家或者进行排序的,并不是说它们就是最好的,其它的就不行.建议大

Linux下统计出现次数最多的指定字段值

假设桌面上有一个叫“data.txt”的文本,内容如下: {id='xxx' info='xxx' kk='xxx' target='111111' dd='xxx'}{id='xxx' info='xxx' kk='xxx' target='777' dd='xxx'}{id='xxx' info='xxx' kk='xxx' target='yyyy' dd='xxx'}{id='xxx' info='xxx' kk='xxx' target='5555' dd='xxx'}{id='xxx