linux如何查找以某个字母打头的文件或文件夹 比如,/etc目录下很多文件,我想列出所有以c开头的文件或文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux如何查找以某个字母打头的文件或文件夹 比如,/etc目录下很多文件,我想列出所有以c开头的文件或文件相关的知识,希望对你有一定的参考价值。
ls -al |grep c* 这样就可以了,运用管道命令|。
如何使用命令行在Linux中查找文件和文件夹
1
使用查找命令,“find”命令允许您搜索知道近似文件名的文件。该命令的最简单形式在当前目录中搜索文件,并递归地通过其与所提供的搜索条件匹配的子目录。您可以按名称,所有者,组,类型,权限,日期和其他条件搜索文件。
在提示符下键入以下命令将列出当前目录中的所有文件。
“find”后的点表示当前目录。
2
要查找符合特定模式的文件,请使用-name参数。您可以使用文件名元字符(例如*),但您应该将一个转义字符(\\)放在每个字符之前或将它们括在引号中。
例如,如果要在Documents目录中找到以“pro”开头的所有文件,我们将使用该cd Documents/命令更改为Documents目录,然后键入以下命令:
find . -name pro\\*
列出以“pro”开头的当前目录中的所有文件。
注意:find命令默认为区分大小写。如果要搜索单词或短语不区分大小写,请使用-inamefind命令中的选项。这是-name命令的不区分大小写的版本。
3
如果find没有找到符合条件的任何文件,则不会产生任何输出。
find命令有很多选项可用于完善搜索。有关find命令的更多信息,请man find 在“终端”窗口中运行,然后按Enter键。
4
使用定位命令
locate命令比find命令更快,因为它使用了先前构建的数据库,而find命令通过所有实际目录和文件在实际系统中进行搜索。locate命令返回包含指定字符组的所有路径名的列表。
数据库从cron定期更新,但您也可以随时更新数据,以便您可以获得最新的结果。为此,请在提示符下键入以下命令:
sudo updatedb
出现提示时输入密码。
5
locate命令的基本形式从文件系统中找到包含搜索条件全部或部分内容的所有文件。
locate mydata
例如,上面的命令发现了两个包含“mydata”的文件和一个包含“数据”的文件
如果要查找包含完全唯一的搜索条件的所有文件或目录,请使用-blocate命令中的选项,如下所示。
locate-b'\\ mydata'
上述命令中的反斜杠是一个globbing字符,它提供了将非特定文件名中的通配符扩展成一组特定文件名的方法。通配符是表达式被评估时可以被一个或多个字符替换的符号。最常见的通配符是问号(?),它表示单个字符,而asterisk(*)表示连续的字符串。在上面的例子中,反斜杠禁用“* mydata *”隐式替换“mydata”,所以最终只能包含“mydata”的结果。
mlocate命令是一个新的locate的实现。它索引整个文件系统,但搜索结果只包含当前用户可访问的文件。更新mlocate数据库时,它会在数据库中保留时间戳信息。这允许mlocate知道目录中的内容是否更改,而不再读取内容,并使数据库更新速度更快,对硬盘驱动器的要求也更低。
当您安装mlocate时,/ usr / bin / locate二进制文件更改为指向mlocate。要安装mlocate,如果尚未包括在Linux发行版中,请在提示符下键入以下命令。
sudo apt-get install mlocate
注意:我们将在本文后面显示一条命令,允许您确定命令的可执行文件所在的位置(如果存在)。
mlocate命令不使用与标准locate命令相同的数据库文件。因此,您可能需要在提示符下键入以下命令手动创建数据库:
sudo /etc/cron.daily/mlocate
在数据库手动创建数据库或从cron运行脚本之前,mlocate命令将不起作用。
有关locate或mlocate命令的详细信息,请键入man locate或man mlocate 在“终端”窗口中,然后按Enter键。两个命令显示相同的帮助屏幕。
6
使用哪个命令
“which”命令返回发出命令时调用的可执行文件的绝对路径。这在找到用于在桌面,面板或桌面管理器中的其他位置创建程序的快捷方式时可用于查找可执行文件的位置。例如,键入命令将which firefox 显示下图中显示的结果。
默认情况下,哪个命令只显示第一个匹配的可执行文件。要显示所有匹配的可执行文件,请使用-a以下命令的选项:
这是一个firefox
您可以一次搜索多个可执行文件,如下图所示。只显示找到的可执行文件的路径。在下面的例子中,只发现了“ps”可执行文件。
注意:哪个命令只搜索当前用户的PATH变量。如果搜索只能作为普通用户使用的root用户的可执行文件,则不会显示任何结果。
有关哪个命令的更多信息,请在终端窗口中的命令提示符下键入“man which”(不带引号),然后按Enter键。
7
使用Whereis命令
whereis命令用于查找命令的二进制文件,源文件和手册页文件所在的位置。例如,whereis firefox 在提示符下输入将显示如下图所示的结果
如果您只想要显示可执行文件的路径,而不是源和路径(man(页)),请使用该-b选项。例如,该命令whereis -b firefox将仅显示/usr/bin/firefox为结果。这很方便,因为您可能会比搜索该程序的源页面和手册页更频繁地搜索程序的可执行文件。您也可以仅搜索源文件(-s)或仅搜索手册页(-m)。
有关whereis命令的详细信息,请键入man whereis 终端窗口,然后按Enter键。
8
了解Whereis命令与哪个命令之间的区别
whereis命令显示命令的二进制,源和手册页的位置,而哪个命令仅显示命令的二进制文件的位置。
whereis命令搜索二进制,源和man文件的特定目录列表,而哪个命令搜索当前用户的PATH环境变量中列出的目录。对于whereis命令,可以在命令的手册页的FILES部分中找到具体目录的列表。
当涉及默认显示的结果时,whereis命令显示它找到的所有内容,而哪个命令只显示找到的第一个可执行文件。您可以使用-a前面讨论过的选项来更改该命令。
因为whereis命令只使用硬编码到命令中的路径,所以您可能并不总是找到您要查找的内容。如果您正在搜索一个程序,则认为可能安装在whereis命令的手册页中未列出的目录中,您可能希望使用该-a选项以查找系统中所有出现的命令,
-iname是不分大小写
-name是分大小写 参考技术B linux系统下,怎么设置某一用户远程登录只能访问根目录下的某个文件夹目录或多把可访问的目录赋予对应的权限即可 如果是ftp,在/etc/ftpusers中设置,RRckiw 参考技术C 1. echo c*
2. ls c* 参考技术D ls -al |grep c* 这样就可以了,运用管道命令|,还有什么问题可以再问我,多交流。。。。追问
如果是目录,是不是会同时将目录中的内容也列出来了,我只想要某个文件夹下某个字母开头的文件或者文件夹列表,不想看到它们内部的列表,我平时用ls,会把c开头的文件夹内部文件的列表都显示出来
追答那你只能进入你想要列出来的那个文件夹,然后用ls *c。还有什么不明白的吗?可以问
本回答被提问者采纳linux基础操作
[一]linux基础
1. ~:家目录(/home/linux)普通用户
2. pwd:显示当前路径的绝对路径(把图形化 界面用命令行的形式进行展示)
3. 相对路径:从当前开始查找
4. 绝对路径:从根开始查找
5. $:提示用户可以在命令行输入命令。
6. ls:显示当前路径下的文件或者文件夹。
7. ls -a:显示当前目录下的文件和文件夹包含隐藏文件(隐藏文件:以.打头)
8. ls -l:以列表的形式显示当前路径下的文件和文件夹。
9. ls -lh:以列表的形式显示当前路径的文件和文件夹(文件大小带单位)。
10. drwxr-xr-x 2 root root 4.0K May 11 06:46 Desktop
d:表示目录
rwx:用户权限( rwx: r刻度 w:可写 x:可执行)
rwx:组权限(ubuntu系统的特点:当添加一个新的用户的时候,它会自动创建一个与用户名相同的组名)
r-x:其它用户权限(r:可读, -:不可写,x:可执行)
2:链接数。
root :用户名
root:组名
4.0k:文件大小
May 11 06:46 :创建文件的时间
11 七种文件类型:
-:普通文件(类似于记事本,word文档之类)
d: 文件夹
l: 链接文件(I/O)
p: 管道文件(进程,线程)
s: 套接字文件(网络)(应用层学完)
b: 块设备(底层)
c: 字符 设备
【2】
cd:改变路径
跳转到家目录的几种方法
cd
cd~
cd /home/linux
cd . : . 在当前跳转(路径不发生改变)
cd .. : . .跳转到上一级(. .:上一级)
cd _:跳转到上一次操作路径(回车不是操作,只有写命令的时候菜是操作)
【3】
mkdir:创建文件夹
touch:创建普通文件
rm 文件夹名-r:删除普通文件
rm 普通文件名:删除普通文件
【4拷贝】
cp 文件夹名 路径 -r(删除或操作的时候加上-r):拷贝文件夹到对应的路径
cp 普通文件 路径:拷贝普通文件到对应的路径下面
CP命令
格式: CP [选项] 源文件或目录 目的文件或目录
选项说明:-b 同名,备分原来的文件
-f 强制覆盖同名文件
-r 按递归方式保留原目录结构复制文件
cp -r /tmp/a /root/a
记得有空格
例子:cp ./day1 /home -r(绝对路径,从根目录开始)。
Cp ./day1 ../../ -r(相对路径,从当前开始)。
【杂项】
打开终端的方式:ctrl +shift+n:打开终端(与现有终端属于同一路径下)
Ctrl+alt+t:打开终端(默认路径为家目录)
关闭终端
Ctrl+d
exit
两个终端切换:alt+tab
【5移动/命名】
mv 源文件名 新文件名 :重命名
mv 文件名(文件夹和普通文件) 路径:移动文件到对应的路径下面
清屏:ctrl+l clear
放大字体:ctrl+shift+‘+’
缩小字体:ctrl+‘-’
【6 vi编辑器】
1. 命令行模式:
2. (插入模式->命令行模式:按esc)
yy:复制一行
nyy:复制n行
dd:剪切一行
ndd:剪切n行
u:撤销
ctrl +r 反撤销(只有撤销后才有反撤销)
3. 插入模式
(插入模式->底行模式:先按esc再按:)
4. 底行模式
W:保存
q:退出
wq:保存退出
q!:强制退出
1,7y:复制1~7行的内容
1,7d:剪切1~7行的内容
noh:去除高亮
/word 查找单词
s%/i/I将i替换成I
以上是关于linux如何查找以某个字母打头的文件或文件夹 比如,/etc目录下很多文件,我想列出所有以c开头的文件或文件的主要内容,如果未能解决你的问题,请参考以下文章