Linux常用命令

1.sed

批量替换单个文件内容

命令格式:sed -i 's/旧内容/新内容/g' 文件路径

sed -i 's/oldString/newString/g' file

例如:我想替换cwx.txt文件中的 java 为 linux ,可以使用以下命令:

sed -i 's/java/linux/g' cwx.txt

批量替换多个文件内容

命令格式:sed -i "s/原内容/新内容/g" `grep 原内容 -rl 所在目录`    注:千万注意这个符号【`】,是【最左上角】那个符号不是单引号

sed -i "s/oldString/newString/g" `grep oldString -rl /path`

例如:我要把/test下所有文件,包含java的替换为linux,可以用以下命令:

sed -i "s/java/linux/g" `grep java -rl /test`

 2.查找文件中内容

find:

查找文件:find ./actions/ -name Constract.php
查找包含leyangjun字母的文件:find /etc -name '*leyangjun*'
查找srm开头的文件:find/etc -name 'srm*'
我们要在/usr目录及子目录下查找文件名包含“leyangjun”关键字的文件:find /usr -print |grep leyangjun

grep:

在Constract.php文件中查找字符leyangjun的行:grep 'leyangjun' Constract.php
不区分大小写地搜索。默认情况区分大小写:grep -i 'ModifySubacction' controllers/Constract.php

管道查询:

从根目录开始查找所有扩展名为.log的文本文件,并找出包含”leyangjun”的行:find / -type f -name "*.log" | xargs grep "leyangjun"

当前目录开始查找所有扩展名为.php的文本文件,并找出包含”leyangjun”的行:find ./ -name "*.php" | xargs grep "leyangjun"

posted @ 2020-09-01 10:25  北极星0202  阅读(99)  评论(0编辑  收藏  举报