linux shell 第几行,Linux shell 获得字符串所在行数及位置

shell 获得字符串所在行数及位置

01 获取字符串所在的行数

方式一:用grep -n

[root@root]# cat test

apple

bit

create

delect

exe

flow

good

[root@root]# cat test | grep -n exe

5:exe

[root@root]# cat test | grep -n exe | awk -F ":" '{print $1}'

5

方式二:用sed -n '/查询的字符串/=' 文件

[root@root]# cat test

apple

bit

create

delect

exe

flow

good

[root@root]#

[root@root]# sed -n '/exe/=' test

5

02 获取字符串中字符所在的位置

方式一:用awk -F 和 wc -c 组合

[root@root]# echo 'uellevcmpottcap' | awk -F 'ott' '{print $1}';

uellevcmp

[root@root]# echo 'uellevcmpottcap' | awk -F 'ott' '{print $1}' | wc -c

10

方式二:用awk 'BEGIN{print index("'${str}'","'${str1}'") }'

[root@root]# str='uellevcmpottcap';str1='ott';awk 'BEGIN{print index("'${str}'","'${str1}'") }'

10

Linux Shell 截取字符串

Linux Shell 截取字符串 shell中截取字符串的方法很多 ${var#*/} ${var##*/} ${var%/*} ${var%%/*} ${var:start:len} ${var: ...

Linux shell去除字符串中所有空格

Linux shell去除字符串中所有空格 echo $VAR | sed 's/ //g'

Linux Shell多进程并发以及并发数控制

1. 基础知识准备 1.1. linux后台进程 Unix是一个多任务系统,允许多用户同时运行多个程序.shell的元字符&提供了在后台运行不需要键盘输入的程序的方法.输入命令后,其后紧跟&a ...

Linux shell 判断字符串为空等常用命令

1.判断字符串为空 if [ -z "$str" ]; then echo "empty string" fi 2.判断文件是否存在 if [ -f /home ...

Linux shell 将字符串分割成数组

原文链接:http://1985wanggang.blog.163.com/blog/static/776383320121745626320/ a="one,two,three,four& ...

[转+整理]linux shell 将字符串分割成数组

原文链接:http://1985wanggang.blog.163.com/blog/static/776383320121745626320/ a="one,two,three,four& ...

linux shell: 搜索字符串,剔除包含特定字符的行

搜索代码中出现CONFIG_BOOTARGS的行,但又不希望有#define和#undef, 暂时不知带如何直接用一个语句做到,因此用了如下三个语句. find . -type f | xargs g ...

shell 查找字符串中字符出现的位置

#!/bin/bash a="The cat sat on the mat" test="cat" awk -v a="$a" -v b=& ...

Linux Shell编程第3章——正则表达式

目录 正则表达式基础 正则表达式的扩展 通配 grep命令 正则表达式基础 Linux Shell以字符串作为表达式向系统传达意思.元字符(Metacharacters)是用来阐述字符表达式意义的字符 ...

随机推荐

Web爬虫入门

1.0示例学习:Web爬虫 public class WebCrawler { // 种子url private static String url = "http://www.cnblog ...

监听SD卡状态

最近在做项目时遇到需要处理SD卡拔出时的监听,在网上找了很多资料.总结了一下, 用接收广播处理最有效率     sd卡拔插时会发送广播,具体如下(摘自一位大虾的博客  来自:http://blog. ...

【Spring】对象后期处理,BeanPostProcessor

当我们使用Spring容器管理对象时,需要对对象进行一些后期处理时,比如数据处理.数据预加载,可以使用BeanPostProcessor接口. 简单演示它的用法. 定义扫描包,显示定义BeanPost ...

ZJU 1180 Self Numbers(暴力模拟判断,水题)

题目链接 同HDU 1128 , POJ 1316(这个范围小一点). 原本怕超时,以为有技巧或者规律,死命的想,后来发现这就是一道水体,模拟着全部判断一下就好了,10秒呢,完全不怕超时...唔,废话 ...

Ubuntu12.04 下修改Apache端口号

1:$sudo vim /etc/apache2/ports.conf NameVirtualHost *:80Listen 8090 #将此行的80修改成8090 2:sudo vim /etc/a ...

JDBC与反射

什么是JDBC Java定义了一套关于连接使用数据库的规范(接口)叫做JDBC,许多数据库厂商实现了这个规范,所以我们可以通过Java提供的接口编程,使得我们更换数据库的时候不用修改原来的代码,只需要 ...

linux的用户,群组和其他用户

1 linux 安全模型:(多任务,多用户的操作系统) 1)使用user和group控制使用者对文件的存储权限. 2)用户使用账户和口令登录linux 3)每个文件都有owner(创建者),owner ...

js中的this关键字,setTimeout(),setInterval()的执行过程

var test1 = { name: 'windseek1', showname: function () { console.log(this.name); } } var test2 = { n ...

基数计数——HyperLogLog

所谓的基数计数就是统计一组元素中不重复的元素的个数.如统计某个网站的UV,或者用户搜索网站的关键词数量:再如对一个网站分别统计了三天的UV,现在需要知道这三天的UV总量是多少,怎么融合多个统计值. 1 ...

python chr()和ord()的含义和使用方法

通过help 查看相关函数的帮助文档 >>>help (chr) chr(...) chr(i) -> character Return a string of one cha ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值