前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux常用命令(二)

Linux常用命令(二)

作者头像
小土豆Yuki
发布2020-06-15 17:44:27
5270
发布2020-06-15 17:44:27
举报
文章被收录于专栏:洁癖是一只狗洁癖是一只狗

文件搜索

Linux 系统中用于查找文件的命令有 find ,locate,whereis, which,type

1. find 命令

find是最常用也是最强大的查找命令,它可以查找任何类型的文件

find常用的选项:

-name:按文件名来查找文件

-user:按照文件的属主来查找文件

-group:按照文件所属的组来查找文件

-perm:按照文件权限来查找文件

-prune:不在当前指定目录中查找

-mtime -n +n n:按照文件修改时间来查找文件,-n表示文件修改时间距现在n天以内,+n表示文件修改时间据现在n天以前 , n 表示n 天之前的一天之内(在日常工作中我们经常会用到 find 结合 mtime 选项 和 rm -rf 命令 来清理log 文件

-type:查找某一类型的文件(b:块设备文件;d:目录文件;c:字符设备文件;p:管道文件;l:链接文件;f:普通文件)

-nogroup:查找无有效所属组的文件,即文件所属的组在/etc/group中不存在

-nouser:查找无有效所属主的文件,即文件的所属主在/etc/passwd中不存在

举例:

find / -name file1 搜索根目录下面所有文件名为 file1 的 目录和文件

find /etc -name \*.d 搜索/etc目录下以'.d' 结尾的所有文件和目录

注意:\ 是转义符 , 也可使用单引号 find /etc -name ‘*.d’或双引号 find /etc -name “*.d”

find / -user yuki 搜索根目录下文件所有者是 'yuki' 的文件和目录

find / -group yuki 搜索根目录下文件所属组是 'yuki' 的文件和目录

find /tmp -perm 777 搜索/tmp目录下文件权限是777 (rwxrwxrwx)文件和目录

find /usr/bin -type f -mtime -10 搜索/usr/bin下 在10天内被创建或者修改过的文件

find /usr/bin -type f -mtime +10 搜索/usr/bin 下10天之前被创建或者修改过的文件

find /var/log -type f -mtime +60 -exec rm -rf {} \; 搜索在/var/log 下的 在60天之前被创建或者修改过的文件 , 并删除

find /root -name '*.sh' -exec chmod 755 {} \; 搜索/root下以 '.sh' 结尾的文件并定义其权限为755

2. locate 命令

locate命令实际是"find -name"的另一种写法,但是 locate命令要比find 查找快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/mlocate/mlocate.db。所以在运行locate 之前要先运行updatedb命令,来确保查找的内容是最新的数据库的内容。

举例:locate '*.ps' 寻找以 '.ps' 结尾的文件.

3. whereis 命令

whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。

如果省略参数则返回所有的信息。

whereis 命令常用的选项:

-b : 只将二进制文件查找出来

-m : 查出说明(帮助)文档路径

-s :找到source源文件

举例:

whereis ls 查找ls相关的可执行文件、源代码文件和帮助文件的位置

whereis log 查找log相关的可执行文件、源代码文件和帮助文件的位置

whereis man 查找man相关的可执行文件、源代码文件和帮助文件的位置

whereis -b python 查找python相关的二进制文件的位置 (这个在工作当中还是很有帮助的)

whereis -m python 查找python的帮助文档的位置

4.which 命令

which指令会在环境变量$PATH设置的目录里查找符合条件的文件, 并显示其全路径。

简单来说which 是查找可执行文件的位置。

举例:

which ls 显示一个可执行文件 ls 的完整路径

5. type 命令

type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。

举例:type -p systemctl 查找systemctl这个可执行文件的位置。相当于 which systemctl

查看文件内容、类型及属性

Linux系统中用于查看文件内容的命令有cat,more,less,head,tail;查看文件类型的命令是file; 查看文件属性的命令是stat

cat file1 从第一个字节开始正向查看文件的内容

tac file1 从最后一行开始反向查看一个文件的内容

more file1 分页显示大文本文件。最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示。

less file1 less工具也是对文件或其它输出进行分页显示的工具。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

举例: 在/var/log/message 文件里面搜索 Aug 关键字

head -2 file1 查看一个文件的前两行

tail -2 file1 查看一个文件的最后两行

tail -f /var/log/messages 实时查看被添加到这个文件 /var/log/message 中的内容

file /usr/bin/ls 查看/usr/bin/ls文件的类型

stat /usr/bin/ls 查看/usr/bin/ls文件的属性,例如大小,最后的修改时间等等

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 洁癖是一只狗 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档