在Linux系统中如何筛选出一个文件只能够以a开头的行

在Linux系统中如何筛选出一个文件只能够以a开头的行,第1张

直接使用通配符。

ls la*。

这是一种方法,*表示匹配任何长度的任意字符,通过这样的方式就可以查找到所有以ls开头的文件,如果我们想查找文件名中含有la的文件,只需输入“ls *la*”即可。

扩展资料:

ls 指令是Linux下最常用的指令之一。

ls 命令将每个由 Directory 参数指定的目录或者每个由 File 参数指定的名称写到标准输出,以及您所要求的和标志一起的其它信息。

运用举例:

1、列出具体文件 #ls -al //这个最常用,可是往往又不彻底符合要求,

2、列出一切子目录的文件:#ls -R //上个指令仅仅列出了本目录下的一切目录和文件,可是目录下的文件不会循环的列出。

*** 作前提:

所缺文件的文件名排列在文件file.txt中,且每两个所缺文件是用空格、制表符或者换行分隔。

所缺文件在路径/home中。

*** 作命令:

for ITEM in `cat file.txt`do find /home/ -name ${ITEM} -type f >>a.logdone

命令解释:

ITEM为声明的变量,代表file.txt的每个文件名。

执行find搜索命令,在/home/中查找,若所缺文件保存在其他路径,或者保存在多个路径下,则将/home/变更为/,但是这样搜索起来会很慢。

>>a.log 表示将结果输出到a.log中。如果删除,则会输出到屏幕上。考虑到你要查找1万条,还是输出到文件中比较好。

输出的结果是:/home/xxxxx

例外:

如果file.txt不是用空格分隔的,而是用其他符号,如【|】或【,】分隔,请提出追问,可以通过其他方法来改变file.txt。

其他:

如上命令也可以写成脚本:

1、创建脚本

cat >find_file.sh

2、将如下内容拷贝进去

#!/bin/sh

for ITEM in `cat file`

do

find /home/ -name ${ITEM} -type f >>a.log

done

回车后,使用CTRL+C,退出

3、使用sh find_file.sh即可执行

1、登录Linux系统之后打开终端,确定你要找关键字的目录。

2、查看下当前目录下所有的文件,你所要找的关键字就在当前目录下某个文件里面。

3、find

-type

f

-print这个命令可以列出当前目录下的所有文件。

4、type后面的f是file的意思,所以只列出文件,而排除文件夹。

5、接下来只要在find命令后面加上exec命令就可以实现。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/9022633.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-24
下一篇 2023-04-24

发表评论

登录后才能评论

评论列表(0条)

保存