当前位置:首页 » 操作系统 » linux下的串

linux下的串

发布时间: 2022-04-21 17:56:13

❶ 如何在linux下查找文件内容包含某个特定字符串的文件

概述

使用grep可以查找包含指定字符串的文件

步骤详解

格式:

grep “要查找的字符串” 文件名

例子:

grep "192.168.0.1" /etc

文件名可以使用基本正则表达式(BRE),例如, 查找test目录下的所有文件,是否包含www.tycode.com字符串。

grep “www.tycode.com” /root/zzh/test/*

几个常用的查询指令:

1、查找时不区分字符串的大小写

grep -i “查找的字符串” 文件名

2、查找时使用正则表达式,匹配符合的字符串

grep -e “正则表达式” 文件名

3、查找不匹配指定字符串的行:

grep -v “被查找的字符串” 文件名

4、查找时显示被查找字符串所在的行数

grep -n “查找的字符串” 文件名

❷ Linux查找和替换目录下所有文件中字符串

linux查找和替换目录下所有文件中字符串单个文件中查找替换很简单,就不说了。文件夹下所有文件中字符串的查找替换就要记忆了,最近部署几十台linux服务器,记录下总结。查找文件夹下包含字符串的文件例:查找/usr/local目录下所有包含rubyer.me的文件。1
grep
-lr
'rubyer.me'
/usr/local/*vim替换单个文件中所有字符串方法例:替换当前文件中所有old为new
www.shiwu.com
1
:%s/old/new/g2#%表示替换说有行,g表示替换一行中所有匹配点。
替换文件夹下包含字符串的文件sed结合grep例:要将目录/www下面所有文件中的zhangsan都修改成lisi,这样做:1
sed
-i
s/old/new/g
`grep
old
-rl
/www`作者
skq

❸ Linux下如何用一个指定的字符串去分割另一个字符串

Linux下可以用strstr()函数定位子串所在的位置,用来实现用子串分隔一个字符串。man strstr可以看函数相关介绍

$manstrstr
NAME
strstr-locateasubstring

SYNOPSIS
#include<string.h>

char*strstr(constchar*haystack,constchar*needle);
DESCRIPTION
Thestrstr().Theterminating`'charactersarenotcompared.
strstr()函数实现从haystack串中,查找第一次出现的needle子串,只比较有效字符,结束符不算在内。

如:

#include<stdio.h>
#include<string.h>
intmain()
{
chars[]="abc@#123@#def@456@#ghi#789";
charsub[]="@#";
char*pc,*pb;
pb=pc=s;//pb指向字符串头
while(pc=strstr(pc,sub))//查找匹配字符串位置
{
*pc='';//置字符串结束符
puts(pb);//输出当前字符串
pc+=strlen(sub);//跳过分隔符串
pb=pc;//pb指向新的起始位置
}
if(pb)
puts(pb);
return0;
}

❹ Linux字符串截取几种方法

简单介绍下Shell字符串截取的详细方法,如截取指定字数、按指定的字符串截取、按指定要求分割。

一、Linux shell 截取字符变量的前8位,有方法如下:

❺ 关于linux中字符串查找命令咨询

grep
==================================
1,作用:查找字符串
2,用法:
grep
"zifuchuan"
dir/
-Hrnw
==>
在dir/中,递归地(r)按照全字匹配(w)查找"zifuchuan"这个字符串,并且找到之后打印出其所在文件名字(H)以及行号(n),全字匹配不包括组合词

❻ 总结linux替换字符串的几种方法

一)通过vi编辑器来替换。
vi/vim 中可以使用 :s 命令来替换字符串。
:s/well/good/ 替换当前行第一个 well 为 good
:s/well/good/g 替换当前行所有 well 为 good
:n,$s/well/good/ 替换第 n 行开始到最后一行中每一行的第一个 well 为 good
:n,$s/well/good/g 替换第 n 行开始到最后一行中每一行所有 well 为 good
n 为数字,若 n 为 .,表示从当前行开始到最后一行
:%s/well/good/(等同于 :g/well/s//good/) 替换每一行的第一个 well 为 good
:%s/well/good/g(等同于 :g/well/s//good/g) 替换每一行中所有 well 为 good
可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
:s#well/#good/# 替换当前行第一个 well/ 为 good/
:%s#/usr/bin#/bin#g 可以把文件中所有路径/usr/bin换成/bin

(二)直接替换文件中的字符串。(此法不用打开文件即可替换字符串,而且可以批量替换多个文件。)
1.perl命令替换,参数含义如下:
-a 自动分隔模式,用空格分隔$_并保存到@F中。相当于@F = split ”。分隔符可以使用-F参数指定
-F 指定-a的分隔符,可以使用正则表达式
-e 执行指定的脚本
-i<扩展名> 原地替换文件,并将旧文件用指定的扩展名备份。不指定扩展名则不备份。
-l 对输入内容自动chomp,对输出内容自动添加换行
-n 自动循环,相当于 while(<>) { 脚本; }
-p 自动循环+自动输出,相当于 while(<>) { 脚本; print; }
用法示例:
perl -p -i.bak -e 's/foo/bar/g' *.c
将所有C程序中的foo替换成bar,旧文件备份成.bak

perl -p -i -e "s/shan/hua/g" ./lishan.txt ./lishan.txt.bak
将当前文件夹下lishan.txt和lishan.txt.bak中的“shan”都替换为“hua”

perl -i.bak -pe 's/(d+)/ 1 + $1 /ge' file1 file2
将每个文件中出现的数值都加一

2.sed命令下批量替换文件内容

格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` 文件名

-i 表示inplace edit,就地修改文件

-r 表示搜索子目录

-l 表示输出匹配的文件名
s表示替换,d表示删除

示例:sed -i "s/shan/hua/g" lishan.txt

把当前目录下lishan.txt里的shan都替换为hua 各个Linux详细命令介绍及应用可如下进行查找

❼ linux下查找某个目录下所有文件中是否含有某个字符串

1、linux下查找某个目录下所有文件中是否包含某个字符串可以使用grep命令来完成。

2、示例:在apache配置文件目录下查找带有rewrite字符串的文件。

grep-rn"rewrite"*
说明:
-r是递归查找
-n是显示行号
*:表示当前目录所有文件,也可以是某个文件名

❽ 在linux中查找字符串用什么命令

Linux查找字符串用grep命令,可以查找文件,也可以在命令的结果中查找。如果是在文件中查找字符串,用法是:
grep 用英文单引号括起来的字符串 文件名
如果是在命令的显示结果中查找,需要用管道符将命令与grep连接起来,像这样:
last | grep 'root'
(在last命令的显示结果中查找字符串root)

❾ 求助Linux下带特殊字符的字符串查找方法!

查找目录下的所有文件中是否含有某个字符串
find .|xargs grep -ri "IBM"
查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名
find .|xargs grep -ri "IBM" -l
推荐使用正则表达式
(1)正则表达式一般用来描述文本模式的特殊用法,由普通字符(例如字符a-z)以及特殊字符(称为元字符,如/、*、?等)组成。
(2)基本元字符集及其含义
^ :只匹配行首。 如^a 匹配以a开头的行abc,a2e,a12,aaa,......
$ :只匹配行尾。 如^a 匹配以a结尾的行bca,12a,aaa,.......
* :匹配0个或多个此单字符。 如(a)* 匹配 空,a,aa,aaa,....
[] :只匹配[]内字符。可以是一个单字符,也可以是字符序列,用","将里面要匹配的不同字符串分开。也可以使用-来表示[]内字符序列的范围,如[1-5]表示[12345]
\ :只用来屏蔽一个元字符的特殊含义。 如\*,\',\",\|,\+,\^,\. 等
.:(点)只匹配任意单字符。
pattern\{n\}:只用来匹配前面pattern出现的次数.n为次数。如a\{2\}匹配aa.
pattern\{n,\}:含义同上,但次数最少为n.如a\{2,\}匹配aa,aaa,aaaa,.....
pattern\{n,m\}:含义同上,但次数在n和m之间。如a\{2,4\}匹配aa,aaa,aaaa三个
(3)举例说明:
^$ :匹配空行
^.$ :匹配包含一个字符的行
\*\.pas :匹配以*.pas结尾的所有字符或文件
[0123456789]或[0-9] :假定要匹配任意一个数字
[a-z] :任意小写字母
[A-Za-z] :任意大小写字母
[S,s] :匹配大小写S
[0-9]\{3\}\.[0-9]\{3\}\.[0-9]\{3\}\.[0-9]\{3\} :匹配IP地址 [0-9]\{3\}三个0-9组成的字符串;\. :匹配点(注意这里点是特殊的字符,所以要用"\"来屏蔽其含义)

❿ linux下怎样在一个文件里面查找一个字符串

在normal模式下按下/即可进入查找模式,输入要查找的字符串并按下回车。

Vim会跳转到第一个匹配。按下n查找下一个,按下N查找上一个。

Vim查找支持正则表达式,例如/vim$匹配行尾的"vim"。 需要查找特殊字符需要转义,例如/vim$匹配"vim$"。

实战一下:

1、用vim打开要查找的文件

注意,如果没有安装vim,系统会提示安装语句,复制运行即可安装vim

热点内容
手电筒源码 发布:2024-10-01 17:19:05 浏览:290
哪个软件可以缓存英文字幕 发布:2024-10-01 17:15:13 浏览:409
python转int 发布:2024-10-01 17:03:01 浏览:945
冲洗解压 发布:2024-10-01 17:00:51 浏览:403
linux升级python版本 发布:2024-10-01 16:28:11 浏览:504
安卓换苹果软件哪个最好用 发布:2024-10-01 16:25:12 浏览:472
centosphp环境搭建 发布:2024-10-01 16:12:14 浏览:62
java阿里云 发布:2024-10-01 16:11:29 浏览:443
scala和java 发布:2024-10-01 16:03:36 浏览:450
数据摘要算法 发布:2024-10-01 16:02:59 浏览:21