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:
相关推荐
结合`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查询接口,可以方便地对文本数据进行复杂查询。 此外,正则表达式是查询特定字符串时的强大工具...
在IT领域,对大型文本文件进行搜索和查找特定字符串是一项常见的任务,特别是在处理源代码文件时。本篇文章将深入探讨如何高效地在一个长文件中查找指定的字符串,并以提供的两个文件"SCAN.BAS"(一个BASIC语言源...
- **查找子串**:使用`strstr()`或其他自定义方法找到要替换的子串在原字符串中的起始位置。 - **计算新字符串长度**:确定替换后的新字符串长度,包括被替换的子串长度和新字符串长度的差值。 - **分配内存**:...
2. 查找:查找是指在数据结构中寻找特定字符串的过程。这可以是线性查找,也可以是更高效的方法如二分查找或哈希表查找。 3. 替换:替换是指在找到特定字符串后,将其替换为另一个字符串的操作。这通常用于文本编辑...
例如,如果你想查看找到的`.c`文件中包含特定字符串`printf`的行,可以这样做: ```bash find . -name "*.c" -print0 | xargs -0 grep printf ``` 这里`-print0`和`xargs -0`用于处理文件名中可能包含空格的情况。...
在IT领域,文本处理是一项常见的任务,特别是在处理大型文件时,快速有效地查找特定字符串显得尤为重要。这个场景下,我们关注的焦点是如何在一个长文件中高效地查找特定的字符串。这通常涉及到编程技术,如文本处理...
INSTR函数则用来查找子串在目标字符串中的位置,返回值为0表示未找到。但手工编写这些查询对于大规模数据库可能非常繁琐且耗时。 这个名为"oracle遍历数据库查找字符串.jar"的工具可能实现了以下功能: 1. **连接...
当我们需要在大量文本文件中快速查找并替换特定字符串时,`sed`(Stream Editor)就是一个非常强大的工具。`sed` 是一个流编辑器,它可以从输入流(通常是文件或管道)中读取数据,对数据进行处理,然后将处理后的...
最后,`grep`命令虽然主要用于在文本文件中查找匹配的文本,但配合`find`命令也可以查找包含特定字符串的文件。例如,`find / -type f -exec grep "keyword" {} \;`会在所有文件中查找包含"keyword"的行。 总的来说...
在 Linux 中,可以使用 `expr index` 或者 `awk match` 来查找字符串中特定字符的位置。 1. **使用 `expr index`:** ```bash $ expr index "$var" t 3 ``` `expr index` 用于查找指定字符在字符串中的位置。 ...
9. **反向查找**:除了查找出现的字符串,一些工具还支持反向查找,即查找不包含特定字符串的行或记录。 10. **上下文查找**:某些高级工具会显示匹配字符串的上下文信息,帮助用户理解字符串在文本中的语境。 综...
它首先使用`strstr()`查找旧字符串在源字符串中的位置,然后根据新旧字符串的长度差异调整字符,最后用新字符串覆盖旧字符串。 在Linux环境下,我们通常会用makefile文件来编译和链接程序。Makefile是一个脚本,它...
在实际应用中,grep 命令可以用来查找文件中的特定字符串。例如,要查找文件 zhao.conf 中所有包含字符串“48”的行,可以使用以下命令: grep "48" zhao.conf 要查找文件 zhao.conf 中所有包含字符串“May”的行...
如果是输出文件,则包含匹配到的字符串及其在文件中的位置。 总之,这个程序设计涵盖了C语言的基础知识,包括文件I/O、字符串处理和循环控制结构。对于初学者,这是很好的练习,能够帮助理解这些核心概念。对于有...
当我们需要在一个大型文本文件中查找特定的字符串时,了解如何高效地进行搜索就显得尤为关键。这个主题涵盖了文本处理、字符串匹配算法以及文件I/O操作等多方面的知识。下面,我们将详细讨论如何在文本文件中搜索一...
查找字符串涉及在一个文本串中寻找特定模式串的过程。这通常通过循环遍历文本串并逐个比较字符来实现。 2. 字符串匹配: 字符串匹配是查找一个字符串(模式串)在另一个字符串(文本串)中的位置的过程。在Linux...