• linux替换目录下所有文件中的某字符串


    linux替换目录下所有文件中的某字符串

    比如,要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做:


    sed -i "s/zhangsan/lisi/g" `grep zhangsan -rl /modules`


    解释一下:


    -i 表示inplace edit,就地修改文件
    -r 表示搜索子目录
    -l 表示输出匹配的文件名


    这个命令组合很强大,要注意备份文件

    转自:http://blog.csdn.net/wide288/article/details/22387723

    将当前目录下的test文件夹的中

    sed -i "s/123qwe/new123asd/g" `grep 123qwe -rl test`

    [root@hadoop2 xiaole_chk_url]# cd test/
    [root@hadoop2 test]# tree 
    .
    ├── 123qwe
    ├── a.txt
    ├── b.txt
    └── t2
        └── er.txt
    
    2 directories, 3 files
    [root@hadoop2 test]# vim 123qwe.txt
    [root@hadoop2 test]# ll -as
    total 28
    4 drwxr-xr-x 4 root root 4096 Mar 23 09:22 .
    4 drwxr-xr-x 4 root root 4096 Mar 23 09:10 ..
    4 drwxr-xr-x 2 root root 4096 Mar 23 09:21 123qwe
    4 -rw-r--r-- 1 root root    6 Mar 23 09:22 123qwe.txt
    4 -rw-r--r-- 1 root root   17 Mar 23 09:14 a.txt
    4 -rw-r--r-- 1 root root   25 Mar 23 09:14 b.txt
    4 drwxr-xr-x 2 root root 4096 Mar 23 09:14 t2
    [root@hadoop2 test]# cd ..
    [root@hadoop2 xiaole_chk_url]# sed -i "s/123qwe/new123asd/g" `grep 123qwe -rl test`
    sed: no input files
    [root@hadoop2 xiaole_chk_url]# ll -as
    total 92472
        4 drwxr-xr-x 4 root root     4096 Mar 23 09:10 .
        4 drwxr-xr-x 4 root root     4096 Mar 22 10:45 ..
        4 -rw-r--r-- 1 root root       39 Mar 22 10:48 a.sh
    42712 -rw-r--r-- 1 root root 43733593 Mar 14 13:52 bulk.del.es.json.log
      288 -rw-r--r-- 1 root root   290933 Mar 14 17:22 bulk_file
    20548 -rw-r--r-- 1 root root 21033520 Mar 14 17:39 bulk_file_sub
    28884 -rw-r--r-- 1 root root 29573229 Mar 15 08:52 bulk.index.del.es.json.log
        4 -rw-r--r-- 1 root root        1 Mar 15 09:23 bulk.index.del.splitfile.json
        4 -rw-r--r-- 1 root root      955 Mar 14 13:52 looh.index.sh
        4 -rw-r--r-- 1 root root      258 Mar 15 08:54 looh.index.splitfile.es.sh
        4 -rw-r--r-- 1 root root      683 Mar 15 09:22 looh.index.splitfile.sh
        4 -rw-r--r-- 1 root root      671 Mar 14 13:52 looh.sh
        4 drwxr-xr-x 2 root root     4096 Mar 15 09:38 splitfile
        4 drwxr-xr-x 4 root root     4096 Mar 23 09:22 test
    [root@hadoop2 xiaole_chk_url]# cd test/
    [root@hadoop2 test]# ll -as
    total 28
    4 drwxr-xr-x 4 root root 4096 Mar 23 09:22 .
    4 drwxr-xr-x 4 root root 4096 Mar 23 09:10 ..
    4 drwxr-xr-x 2 root root 4096 Mar 23 09:21 123qwe
    4 -rw-r--r-- 1 root root    6 Mar 23 09:22 123qwe.txt
    4 -rw-r--r-- 1 root root   17 Mar 23 09:14 a.txt
    4 -rw-r--r-- 1 root root   25 Mar 23 09:14 b.txt
    4 drwxr-xr-x 2 root root 4096 Mar 23 09:14 t2
    [root@hadoop2 test]# tree 
    .
    ├── 123qwe
    ├── 123qwe.txt
    ├── a.txt
    ├── b.txt
    └── t2
        └── er.txt
    
    2 directories, 4 files
    [root@hadoop2 test]# vim as.txt
    [root@hadoop2 test]# ll -as
    total 32
    4 drwxr-xr-x 4 root root 4096 Mar 23 09:23 .
    4 drwxr-xr-x 4 root root 4096 Mar 23 09:10 ..
    4 drwxr-xr-x 2 root root 4096 Mar 23 09:21 123qwe
    4 -rw-r--r-- 1 root root    6 Mar 23 09:22 123qwe.txt
    4 -rw-r--r-- 1 root root 1937 Mar 23 09:23 as.txt
    4 -rw-r--r-- 1 root root   17 Mar 23 09:14 a.txt
    4 -rw-r--r-- 1 root root   25 Mar 23 09:14 b.txt
    4 drwxr-xr-x 2 root root 4096 Mar 23 09:14 t2
    [root@hadoop2 test]# cd ..
    [root@hadoop2 xiaole_chk_url]# sed -i "s/123qwe/new123asd/g" `grep 123qwe -rl test`
    [root@hadoop2 xiaole_chk_url]# cd test/
    [root@hadoop2 test]# tree
    .
    ├── 123qwe
    ├── 123qwe.txt
    ├── as.txt
    ├── a.txt
    ├── b.txt
    └── t2
        └── er.txt
    
    2 directories, 5 files
    [root@hadoop2 test]# 
    

      

    注意:

    只修改文件中的文件内容的字符串,不修改文件名、文件夹名

  • 相关阅读:
    开发maven项目,war包部署tomcat访问无效解决方法
    内网穿透,把自己的外网电脑搞成服务器。
    SQL语句(oracle)分组获取最新一条数据
    保留n位小数
    Exception in thread "main" java.lang.RuntimeException: Stub!
    Ubantu右键没有新建文档选项
    Ubantu安装搜狗输入法
    Ubantu环境下安装python
    虚拟机安装Ubantu
    每日Scrum(1)
  • 原文地址:https://www.cnblogs.com/rsapaper/p/8628429.html
Copyright © 2020-2023  润新知