`
Netpet_11
  • 浏览: 4015 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux中查找包含特定字符串的所有文件

阅读更多

1.findtxt.sh

#!/bin/bash 

 

echo -e "\nThis script finds files in a specific dir with a keyword.\nOK,Please input a keyword:"

 

read keyword

if [ "$keyword" = "" ]; then 

    echo  "keyword can not be null!\n"

    exit 0

fi 

      

echo "\nPlease input the dir path:"

read dirPath

while [ "$dirPath" = "" ]

do

  echo  "The dir can't be null,pls input it again"

  read  dirPath

done

 

if [ ! -d "$dirPath" ]; then

  echo "The $dirPath is not exist!\n\n"

  exit 0

fi

      

echo  "\n--------------- Find these files ---------------\n"

 

fileCount=0

files=`ls -R $dirPath 2> /dev/null | grep -v '^$'`

for fileName in $files

do  

    temp=`echo $fileName | sed 's/:.*$//g'`

    if [ "$fileName" != "$temp" ]; then 

        currentDir=$temp

    else 

        fileType=`file $currentDir/$fileName | grep "text"`

        if [ "$fileType" != "" ]; then 

            temp=`grep $keyword $currentDir/$fileName 2> /dev/null`

            if [ "$temp" != "" ]; then 

                echo $currentDir/$fileName

                fileCount=`expr $fileCount + 1`

            fi 

        fi 

    fi 

done 

if [ $fileCount -gt 0 ];then

  echo "\n\nFiles Total: $fileCount"

  echo "\nFind Finished!\n"

else

  echo "No files found!"

fi

 

2.将以上findtxt.sh放在任意目录下,如:/home/findtxt.sh

 

3.切换到当前用户目录下:cd ~

编辑.bashrc文件

在文件的最末尾添加:

#alias for the find special content in the type files of text

alias findtxt='sh /home/findtxt.sh'

 

4.重新登录后生效。

 

5. tom@tom-VirtualBox:~$ findtxt

This script finds files in a specific dir with a keyword.

OK,Please input a keyword:

 

 

分享到:
评论

相关推荐

    Linux查找文件夹下包含某字符的所有文件

    结合`grep`,我们可以更有效地查找含有特定字符串的文件。例如,查找所有`.php`文件中包含"message"的行,可以这样操作: ```bash find . -type f -name '*.php' | xargs grep 'message' ``` 在这个命令中,`find ...

    文件字符串查找工具,支持多行的

    它们能够帮助用户快速定位含有特定字符串的文件,极大地提高了工作效率。 支持多行查找的特性使得这些工具更加强大。传统的字符串查找可能只关注单行文本,但多行查找允许用户搜索跨越多行的模式,这对于查找特定的...

    多个文件中查找字符串

    3. 查找操作:在一组文件中查找字符串,是为了找出包含特定文本的文件或找到文本在文件中的位置。 二、常用工具: 1. 命令行工具: - Windows:`findstr`命令,可以在命令提示符中搜索单个或多个文件中的文本。 -...

    从文本文件中查找字符串

    这些命令行工具可以遍历指定目录下的所有文件,查找包含特定字符串的文件。例如,`grep "function_name" *.java`将在当前目录下所有的.java文件中查找“function_name”。 对于更复杂的情况,例如在不同后缀的文件...

    在文件中查询特定字符串

    例如,使用Hadoop的MapReduce,我们可以编写自定义的Mapper和Reducer来查找特定字符串。Spark则提供了DataFrame和SQL查询接口,可以方便地对文本数据进行复杂查询。 此外,正则表达式是查询特定字符串时的强大工具...

    如何在一个长文件中查找某一个特定的字符串 (2KB)...

    在IT领域,对大型文本文件进行搜索和查找特定字符串是一项常见的任务,特别是在处理源代码文件时。本篇文章将深入探讨如何高效地在一个长文件中查找指定的字符串,并以提供的两个文件"SCAN.BAS"(一个BASIC语言源...

    linux 下c写的字符串替换

    - **查找子串**:使用`strstr()`或其他自定义方法找到要替换的子串在原字符串中的起始位置。 - **计算新字符串长度**:确定替换后的新字符串长度,包括被替换的子串长度和新字符串长度的差值。 - **分配内存**:...

    字符串查找替换(批量任何文件)

    2. 查找:查找是指在数据结构中寻找特定字符串的过程。这可以是线性查找,也可以是更高效的方法如二分查找或哈希表查找。 3. 替换:替换是指在找到特定字符串后,将其替换为另一个字符串的操作。这通常用于文本编辑...

    linux遍历目录查找特定后辍文件

    例如,如果你想查看找到的`.c`文件中包含特定字符串`printf`的行,可以这样做: ```bash find . -name "*.c" -print0 | xargs -0 grep printf ``` 这里`-print0`和`xargs -0`用于处理文件名中可能包含空格的情况。...

    如何在一个长文件中查找某一个特定的字符串(2KB)

    在IT领域,文本处理是一项常见的任务,特别是在处理大型文件时,快速有效地查找特定字符串显得尤为重要。这个场景下,我们关注的焦点是如何在一个长文件中高效地查找特定的字符串。这通常涉及到编程技术,如文本处理...

    oracle遍历数据库查找字符串

    INSTR函数则用来查找子串在目标字符串中的位置,返回值为0表示未找到。但手工编写这些查询对于大规模数据库可能非常繁琐且耗时。 这个名为"oracle遍历数据库查找字符串.jar"的工具可能实现了以下功能: 1. **连接...

    命令行下在文件中查找并替换匹配的字符串的工具

    当我们需要在大量文本文件中快速查找并替换特定字符串时,`sed`(Stream Editor)就是一个非常强大的工具。`sed` 是一个流编辑器,它可以从输入流(通常是文件或管道)中读取数据,对数据进行处理,然后将处理后的...

    Linux中六种实用文件查找法.pdf

    最后,`grep`命令虽然主要用于在文本文件中查找匹配的文本,但配合`find`命令也可以查找包含特定字符串的文件。例如,`find / -type f -exec grep "keyword" {} \;`会在所有文件中查找包含"keyword"的行。 总的来说...

    linux 字符串操作

    在 Linux 中,可以使用 `expr index` 或者 `awk match` 来查找字符串中特定字符的位置。 1. **使用 `expr index`:** ```bash $ expr index "$var" t 3 ``` `expr index` 用于查找指定字符在字符串中的位置。 ...

    字符串查找工具

    9. **反向查找**:除了查找出现的字符串,一些工具还支持反向查找,即查找不包含特定字符串的行或记录。 10. **上下文查找**:某些高级工具会显示匹配字符串的上下文信息,帮助用户理解字符串在文本中的语境。 综...

    字符串替换函数基于C语言实现可运行于Linux

    它首先使用`strstr()`查找旧字符串在源字符串中的位置,然后根据新旧字符串的长度差异调整字符,最后用新字符串覆盖旧字符串。 在Linux环境下,我们通常会用makefile文件来编译和链接程序。Makefile是一个脚本,它...

    Linux下如何通过关键字查找文件下载

    在实际应用中,grep 命令可以用来查找文件中的特定字符串。例如,要查找文件 zhao.conf 中所有包含字符串“48”的行,可以使用以下命令: grep "48" zhao.conf 要查找文件 zhao.conf 中所有包含字符串“May”的行...

    依次遍历所有txt文件,匹配字符串并输出匹配结果

    如果是输出文件,则包含匹配到的字符串及其在文件中的位置。 总之,这个程序设计涵盖了C语言的基础知识,包括文件I/O、字符串处理和循环控制结构。对于初学者,这是很好的练习,能够帮助理解这些核心概念。对于有...

    搜索一个文本文件字符串

    当我们需要在一个大型文本文件中查找特定的字符串时,了解如何高效地进行搜索就显得尤为关键。这个主题涵盖了文本处理、字符串匹配算法以及文件I/O操作等多方面的知识。下面,我们将详细讨论如何在文本文件中搜索一...

    c 查找字符串

    查找字符串涉及在一个文本串中寻找特定模式串的过程。这通常通过循环遍历文本串并逐个比较字符来实现。 2. 字符串匹配: 字符串匹配是查找一个字符串(模式串)在另一个字符串(文本串)中的位置的过程。在Linux...

Global site tag (gtag.js) - Google Analytics