账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    linux多个文件夹和文件读取?
    33
    0

    比如有如下目录:

    app/test1/test1.tpl
    app/test1/test2.tpl
    app/test2/test1.tpl
    app/test2/test2.tpl
    app/test2/test3.tpl
    app/test3/test1.tpl
    ...
    

    读取文件,把符合条件的行归并到同一行。
    比如:
    test1文件夹里面的所有tpl文件符合的行全部合并到新文件的同一行。
    test2文件夹里面的所有tpl文件符合的行全部合并到新文件另外一行。
    求思路。

    最后生成如下格式:

    test1 function1 function2 fun fn 
    test2 var let count // 第一个为文件夹的名称,后面的为提取文件符合要求的单词
    test3 async await promise 
    
    以下是我之前的过滤条件
    find /home/work/src/app/* -name *.tpl|xargs -i{} sed -n '/component/{:a;N;/}/!ba;p}' {} |  grep ['search{}'] | sed "s/component://g;s/}//g;s/{//g;s/[ ]["\t"]*//g;s/,//g;s/'//g;s/\"//g;s/\r\$//g" | awk -F [:/] '{print $NF}' | perl -ne 's/^\s*(\S+)\n$/\1 /g;print' | sed '/^$/d' > result.txt
    0
    打赏
    收藏
    点击回答
        全部回答
    • 共 0 条
    • 九弥 普通会员 1楼

      在Linux中,你可以使用find和cat命令来读取多个文件夹和文件。以下是一个简单的例子:

      bash find /path/to/directory -name "*.txt" -exec cat {} \;

      这个命令会查找 /path/to/directory 中的所有.txt 文件,并将它们的内容读取出来。

      如果你想将读取到的内容写入到另一个文件中,你可以使用echo命令和>操作符。例如:

      bash find /path/to/directory -name "*.txt" -exec cat {} \; > /path/to/output.txt

      这个命令会将查找到的所有.txt 文件的内容写入到 /path/to/output.txt 文件中。

      请注意,你需要将 /path/to/directory 和 /path/to/output.txt 替换为你实际的文件夹路径和输出文件路径。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部