精华内容
下载资源
问答
  • 使用grep同时搜索两个字符串

    千次阅读 2017-05-13 11:59:46
    同时搜索WifiSyncService和WifiSyncScan,如下: grep -rE 'WifiSyncService|WifiSyncScan' ./

    同时搜索WifiSyncService和WifiSyncScan,如下:

    grep -rE 'WifiSyncService|WifiSyncScan' ./

    展开全文
  • 在ls中用grep匹配多个字符串

    千次阅读 2018-03-26 16:03:36
    例如我有一些文件里含有aaa又含有bbb我想把同时含有这两个的找出来ls | grep aaa|grep bbb我想找出含有aaa或者bbb其中一项或多项的文件列出来ls | grep -e aaa -e bbb...

    例如我有一些文件里含有aaa又含有bbb

    1. 我想把同时含有这两个的找出来
      ls | grep aaa|grep bbb
    2. 我想找出含有aaa或者bbb其中一项或多项的文件列出来
      ls | grep -e aaa -e bbb
    展开全文
  • 两个字符串统计重复字符个数。字符串中可能有重复字符,不进行排重。 #!/bin/bash #比较2个字符串中,重复字符数 str1="a1b1c2d2ie" str2="x26b7ac1fk" len2=${#str2} let len2-- i=0 icount=0 while [ $i ...

    两个字符串统计重复字符个数。字符串中可能有重复字符,不进行排重。

    #!/bin/bash

    #比较2个字符串中,重复字符数

    str1="a1b1c2d2ie"

    str2="x26b7ac1fk"

    len2=${#str2}

    let len2--

    i=0

    icount=0

    while [ $i -le $len2 ]; do

       tmp=${str2:${i}:1}

        echo $str1 |  grep "${tmp}"

       flag=$?

       if [ $flag -eq 0 ]; then

           let icount++

       fi

       echo $i"," $tmp 

        let i++

    done

    echo "重复字符数量:" $icount

    总结:

    思路比较简单,将其中一个字符串以每个字符为单位转化为数组,每次取1个与另一个字符串进行正则比较。循环完成所有比较。

    展开全文
  • grep pipe:不断循环从标准输入读取数据进行字符串匹配过滤 shell进程中创建两个进程,一个进程运行ps,一个进程运行grep 要将ps进程的数据,交给grep进程只能通过进程间通信完成—匿名管道 1.创建管道 2.创建两个...

    管道:| 连接两个命令,将前边命令进程要输出到标准输出的结果,不再输出到标准输出,而是将这个数据传输到后边的命令进程
    ps -ef | grep pipe
    ps -ef:将所有进程信息写入到标准输出
    grep pipe:不断循环从标准输入读取数据进行字符串匹配过滤

    shell进程中创建两个进程,一个进程运行ps,一个进程运行grep
    要将ps进程的数据,交给grep进程只能通过进程间通信完成—匿名管道
    1.创建管道
    2.创建两个进程,在各自进程中进行程序替换
    3.在程序替换之前,ps进程应该标准输出重定向到管道写入端,grep进程应该标准输入重定向到管道读取端
    4.父进程等待子进程退出

    具体代码实现如下:

    #include<stdio.h>                                                                                                   
    #include<stdlib.h>    
    #include<unistd.h>    
    #include<sys/wait.h>    
        
    int main()    
    {    
      int pipefd[2];   //创建pipe函数所需的两个文件描述符,pipe[0]为读管道,pipe[1]为写管道    
      int ret = pipe(pipefd);   //创建匿名管道    
      if(ret < 0)    
      {    
        perror("pipe error");    
        return -1;    
      }    
      if(fork() == 0)   //创建第一个子进程    
      {    
        dup2(pipefd[1], 1);   //将标准输出重定向到管道的写端    
        execlp("ps", "ps", "-ef", NULL);   //进行ps -ef程序替换,之后进程退出并释放所有资源    
        exit(-1);    
      }    
      if(fork() == 0)    
      {    
        close(pipefd[1]);   //关闭管道的所有写端,使程序运行完直接退出,不再阻塞
        dup2(pipefd[0], 0);   //将标准输入重定向到管道的读端
        execlp("grep", "grep", "pipe", NULL);   //进行grep+字符串的程序替换
        exit(-1);
      }
      close(pipefd[0]);   //关闭父进程的读写段,防止资源泄漏
      close(pipefd[1]);
      wait(NULL);
      wait(NULL);
      return 0;
    }                                                                           
    

    运行结果:
    在这里插入图片描述

    展开全文
  • 》,里面提及到grep速度快的一重要原因是使用了Boyer-Moore算法作为字符串搜索算法,兴趣之下就想了解这算法,发现这算法一开始还挺难理解的,也许是我理解能力不是很好吧,花了小半天才看懂,看懂了过后就想...
  • linux查找同时含有两个字符串的文件。 find . -type f -iname “*.java” | xargs grep -irl “str1” | xargs grep -irl “str2” 这个语句的用处是要对一个陌生的apk进行小修改的时候整理逻辑关系的时候所用。...
  • 新需求:要求循环提取linux日志文件两个指定字符串之间的字符串。 先后尝试了grep、sed等指令,均无果而终。 直到看到下图百度搜索结果,执行以下指令终获成功:awk 'BEGIN {key=1} /&gt;&gt;&gt; ...
  • ”,里面提及到grep速度快的一重要原因是使用了Boyer-Moore算法作为字符串搜索算法,兴趣之下就想了解这算法,发现这算法一开始还挺难理解的,也许是我理解能力不是很好吧,花了小半天才看懂,看懂了过后就想...
  • 如何在所有的.py .txt .cpp文件 中grep “abc”和“123”两个字符串
  • d=$(diff <(echo "$test1" |sed 's/./&\n/g') <(echo "$test2" |sed 's/./&...\n/g') | grep -c '^[<>]') echo $((100-100*d/(${#test1}+${#test2})))% e.g. liuyd@inn:~$ test1="12345" liuy...
  • 在Linux中,由于文件很多,代码很长,可能我们只知道其中的一两个字符串,如‘test’,这个时候我们要在那么多文件中找到这一字符串所在位置很难,因此可以使用grep和find寻找,如下: 使用grep查找 可以输入 ...
  • awk 提取两个字符串之间的内容

    万次阅读 2015-10-23 23:56:30
    #/bin/bash src=$1 dst=$2 cat ${src} | grep -E ".*" | awk '{t=$0;gsub(/.*|.*/,"",t);print t}' > ${dst}
  • ”,里面提及到grep速度快的一重要原因是使用了Boyer-Moore算法作为字符串搜索算法,兴趣之下就想了解这算法,发现这算法一开始还挺难理解的,也许是我理解能力不是很好吧,花了小半天才看懂,看懂了过后就想...
  • strA="long string" strB="string" result=$(echo $strA | grep "${strB}") if [[ "$result" != "" ]] then  echo "包含" else  echo "不包含" fi
  • 小生在处理生物信息类的DNA档案 (FASTA) 时,许多时候有用的已知的基因或者蛋白质只有那麽一条,但就需要在成堆上千FASTA文件里面去找所对应的是哪一文件。因为已知序列是有特定编号的,所以小生喜欢用Bash...
  • -- search the txt files contain string "from" and does not contain string "127.0.0.1"-- database + OS shell + Unix-like utility(grep)create table #want (fname nvarchar(512))create table #discard (tnam
  • Linux中有一个find命令,可以用于查找文件名,使用grep命令,可以用于检索文件夹中的字符串,这两个命令配合起来,可以实现强大的功能。 其中grep中有一个 -i选项,是不区分大小写的选项。 下面演示如下的命令: ...
  • 1、场景一是这样的,现有字符串的内容 name: tiger; age:18; location:china; 需求:提取每属性的值,如age的值为18。 定义了一函数如下: 1 function getValueOf(){ 2 val=$(cat $1 | grep -oP "(?<=$...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 450
精华内容 180
关键字:

grep两个字符串