189 8069 5689

linux大于号命令 linux中大于等于

Linux常用命令详解 | find

find 命令的基本结构如下:

创新互联公司网站建设由有经验的网站设计师、开发人员和项目经理组成的专业建站团队,负责网站视觉设计、用户体验优化、交互设计和前端开发等方面的工作,以确保网站外观精美、成都网站建设、成都做网站易于使用并且具有良好的响应性。

find 命令手册 : man find

find 命令中的 -name 选项可以根据文件名称进行检索( 区分大小写 )。如需要忽略文件名中的大小写,可以使用 -iname 选项。

-name 和 -iname 两个选项都支持 wildcards 。如:

例1:查找 /usr 目录下所有文件名以 .txt 结尾的文件

例2:查找 /usr 目录下所有文件名刚好为 4 个字符的文件

例3:查以大写字母开头的文件

例4:查以两个小写字母和两个数字开头的txt文件

类似的还有:

-lname -ilname

-path -ipath

-regx -iregx

有些时候,你需要在搜索时匹配某个文件或目录的 完整路径 ,而不仅仅是匹配文件名。可以使用 -path 或 -ipath 选项。

例1:如查找 /usr 下所有文件名以 .txt 结尾的文件或目录,且该文件的父目录必须是 src 。可以使用以下命令:

例2:在当前目录除aa之外的子目录内搜索 txt文件

例3:在当前目录,不再子目录中,查找txt文件

如果只想搜索得到文件 或 目录,即不想它们同时出现在结果中。可以使用 -type 选项指定文件类型。

-type 选项最常用的参数如下:

例:检索 /usr 下所有文件名以 python 开头的目录

find 命令支持 -empty 选项用来检索 为空 的文件或目录。空文件即文件里没有任何内容,空目录即目录中没有任何文件或子目录。

例:检索用户主目录下所有的空目录

find 命令也允许用户对当前的匹配条件进行 “反义” (类似于 逻辑非 操作)。

如需要检索 /usr 下所有文件名 不 以 .txt 为后缀的文件。可以使用以下命令:

也可以“翻转”任何其他的筛选条件,如:检索 /usr 下所有内容不为空的文件

为了检索归属于特定用户的文件或目录,可以使用 -user 选项。

例:检索根目录下所有属主为 starky 的文件

类似于 -user 选项, -group 选项则可以根据文件或目录的 属组 进行检索。

有些时候,需要根据文件创建或修改的时间进行检索。

Linux 系统中,与文件相关联的时间参数有以下三种:

与此对应的是 find 命令中的 -mtime , -atime 和 -ctime 三个选项。

这三个选项的使用遵循以下示例中的规则:

检索 /usr 下两天前被修改过的文件

如果觉得 -mtime 等选项以 天 为单位时间有点长,还可以使用 -mmin , -amin , -cmin 三个选项。

查找比 aa.txt 新 的文件

查找比 aa.txt 旧 的文件

查找比aa.txt新,比bb.txt旧的文件

-size 选项允许用户通过文件大小进行搜索(只适用于文件,目录没有大小……)。

表示文件大小的单位由以下字符组成:

另外,还可以使用 + 或 - 符号表示 大于 或 小于 当前条件。

检索文件大小高于 1 GB 的文件

find 命令可以使用 -perm 选项以文件权限为依据进行搜索。

9.1使用符号形式

例1:如需要检索 /usr 目录下权限为 rwxr-xr-x 的文件,可以使用以下命令:

例2:搜索 /usr 目录下所有权限为 r-xr-xr-x (即系统中的所有用户都只有读写权限)的文件和目录,可以使用以下命令:

很多时候,我们只想匹配文件权限的一个 子集 。比如,检索可以直接被任何用户执行的文件,即只关心文件的执行权限,而不用管其读写权限是什么。

上述的需求可以通过以下命令实现:

其中 a=x 前面的 / 符号即用来表示只匹配权限的某个子集(执行权限),而不用关心其他权限的具体设置。

9.2使用数字形式

例如:搜索 /usr 目录下权限为 644 (即 rwxr-xr-x )的文件

find 命令默认是以 递归 的方式检索项目的,这有时候会导致得到的结果数量非常巨大。可以使用 -maxdepth 限制 find 命令递归的层数。

例如:搜索时向下递归的层数最大为 3

在之前的例子中有出现多个搜索条件的 组合 以及对某个搜索条件的 反转 。

实际上 find 命令支持 “and” 和 “or” 两种逻辑运算,对应的命令选项分别是 -a 和 -o 。通过这两个选项可以对搜索条件进行更复杂的组合。

此外还可以使用 小括号 对搜索条件进行 分组 。注意 find 命令中的小括号常需要用 单引号 包裹起来。因小括号在 Shell 中有特殊的含义。

如检索 /usr 下文件名以 python 开头且类型为目录的文件

该命令等同于:

更复杂的组合形式如:

例4:在除dir0及子目录以外的目录下查找txt后缀文件

说明:-a 应该是and的缩写,意思是逻辑运算符‘与’(); -o应该是or的缩写,意思是逻辑运算符‘或’(||), -not 表示非.

命令行的意思是:如果目录dir0存在(即-a左边为真),则求-prune的值,-prune 返回真,‘与’逻辑表达式为真(即-path './dir0*' -a -prune 为真),find命令将在除这个目录以外的目录下查找txt后缀文件并打印出来;如果目录dir0不存在(即-a左边为假),则不求值-prune ,‘与’逻辑表达式为假,则在当前目录下查找所有txt后缀文件。

-delete 选项可以用来删除搜索到的文件和目录。

例如:删除 home 目录下所有的空目录:

-exec 选项可以对搜索到的结果执行执行该参数所给出的shell命令。形式为 command {} \; ,注意{}与\;之间有空格 。每当 find 命令检索到一个符合条件的文件,会使用其完整路径取代命令中的 {} ,然后执行 -exec 后面的命令一次。

例1:如需要将 home 目录下所有的 MP3 音频文件复制到移动存储设备(假设路径是 /media/MyDrive ),可使用下面的命令:

其中的 大括号 ( {} )作为检索到的文件的 占位符 ,而分号( ; )作为命令结束的标志。因为分号是 Shell 中有特殊含义的符号,所以需要使用单引号括起来或前面加上转义符 \ 。

例2:查看当前目录下的所有普通文件,并在 - exec 选项中使用 ls -l 命令将它们列出

例3:在多个文件中检索某个指定的字符串。如在用户主目录下的所有文件中检索字符串 hello ,可以使用如下命令:

创建 Gzip 格式的压缩文件的命令为:

现在假设需要将用户主目录下所有的 MP3 文件添加到压缩包 music.tar.gz 中,直观的感觉是,其命令应为如下形式:

实际情况是,这样得到的 music.tar.gz 其实只包含一个 MP3 文件。原因是 find 命令 每次 发现一个音频文件,都会再执行一次 -exec 选项后面的压缩命令。导致先前生成的压缩包被覆盖。

可以先让 find 命令检索出所有符合条件的音频文件,再将得到的 文件列表 传递给后面的压缩命令。完整的命令如下:

如果想浏览搜索到的文件(目录)的详细信息(如权限和大小等),可以直接使用 -ls 选项。

例如:浏览所有 1G 以上大小的文件的详细信息

与exec作用相同,区别在于,在执行命令之前,都会给出提示,让用户确认是否执行

与 exec 作用相同 ,起承接作用。区别在于 |xargs 主要用于承接删除操作 ,而 -exec 都可用 如复制、移动、重命名等

例1:查找以ap或may开头的文件

例2:查硬连接数大于2的文件或目录

例3:查找含特定字符串的文件。查找当前目录下含有"the string you want find…"字符串的文件:

例4:从根目录开始查tmpfile,一旦查到马上删除

例5:如何用find查找某一天更改的文件?可以使用这一行命令来实现:

A Guide to the Linux “Find” Command

Linux常见命令

权限管理命令 chmod

英文愿意: change the permissions mode of a file

语法: chmod[{ugoa}{+-=}{rwx}] [文件或目录]

[mide = 421] [文件或目录]

-R 递归修改

权限的数字表示

r -- 4

w -- 2

x -- 1

rwxrw-r-- (4+2+1 = 7)

7 6 4

例子:mkdir /temp 创建了一个目录

touch /temp/testfile 在该目录下创建了一个test file文件

chmod 777 /temp 改变了一下该目录的权限

名称: chgrp

英文原意:change file group ownership

语法:chgrp [用户][文件或目录]

功能: 改变文件或目录的所属租

例子: useradd hl // 添加所有者

groupadd brother // 添加所有组

charp brother text // brother变成了text文件的所属组

注意:

1、所属组就是创建这的所属者的缺省组

2、linux中创建的文件缺少x(可执行)为了使系统更加安全

mask

0022

0特殊权限

022 ugo --- -w- -w-

1、文件搜索命令find

执行权限:find

语法:find[搜索范围][匹配条件]

功能描述:文件搜索

例子:

find /etc -name init (-iname 不区分大小写)

find /home -user(-group) hl

在根目录下查找所有者(所有组)为hl的文件

在目录/etc中查找文件init

init init init // 通配符

?init (?匹配单个字符)

find / -size +204800

在跟目录下查找大于100MB的文件 (100MB = 102400KB = 204800)

+n 大于 -n小于 n等于

find /etc -cmin -5

例子2:

find /etc -size + 163840 -a size -204800

在/etc下查找大于80MB小于100MB的文件

-a两个条件同时满足

-o两个条件满足任意一个即可

在/etc下查找5分钟内被修改的属性的文件和目录

-amin 访问时间 access

-cmin 文件属性 change

-mmin 文件内容 modify

2、文件搜索指令 locate

命名名称:locate

执行权限:所有用户

语法:locate 文件名

功能描述:在文件资料库中查找文件

例子: $ locate inittab

输出文件所在位置

locate和find的区别:

locate的查找速度很快,因为find是在分区和磁盘上查找,而locate是在资料库中查找

注意:如果资料库没有实时更新,所以locate可能会查不到要查询的文件。

即:

updatedb (升级文件的资料库)

loocate -i 文件名 (-i 不区分大小写)

3、文件搜索命令:which (更精确呦)

执行权限:所有用户

功能描述:搜索命令所在目录及别名信息

例子: which ls

alias(别名)

4、whiereis

执行权限:所有用户

语法: whereis[命令名称]

功能描述:搜索命令所在目录及帮助文档路径

例子: whereis ls

5、grep

执行权限:所有用户

语法:grep -iv[指定字串][文件]

功能描述:在文件中搜索字符串匹配的行并输出

-i 不区分大小写

-v 排除指定字符串

例子 grep mysql /root/install.log

补充: linux中 # 表示注释

命名名称:man

英文原意:manual

执行权限:所有用户

语法:man[命令或配置文件]

功能描述:获取帮助信息

例子: man ls # 查看ls命令的帮助信息

man services 查看配置文件sevices的帮助信息

补充:man 。。。。后

/-g :查询与g有关的信息

空格进行翻页

回车进行换行

按n继续查找

命令名称:useradd

执行权限:root

语法:useradd 用户名

功能描述: 添加新用户

例子: useradd HF

命令名称:passwd

执行权限:所有用户

语法:passwd 用户名

功能描述: 设置用户密码

例子: passwd HF

命令名称:who

执行权限:所有用户

语法:who

功能描述: 查看登录用户信息

例子: who

输出内容含义:

登录用户名 登录终端(tty本地登录、pds表述远程终端) 登录时间 登录主机ip地址

命令名称:w

执行权限:所有用户

语法:w

功能描述: 查看登录用户详细信息

例子: w

命令名称:gzip

英文原意:GNU zip

执行权限:所有用户

语法:gzip[文件]

功能描述: 压缩文件

压缩后文件格式:.gz

解压缩:gunzip 压缩文件

注意:gizp只能压缩文件,不能压缩目录

命令名称:tar

执行权限:所有用户

语法:tar 选项 [-zcf] [压缩文件名] [目录]

-c 打包

-v 显示详细文件

-f 指定文件名

-z 打包同时压缩

功能描述: 打包目录

压缩后文件格式:.tar.gz

命令名称:zip

执行权限:所有用户

语法:zip 选项[-r][压缩后文件名][文件或目录]

-r 压缩目录

功能描述: 压缩文件或目录

压缩后文件格式: zip

注意:zip是window和linux系统中通过用的压缩格式

命令名称:bzip2

执行权限:所有用户

语法:bzip2 选项 [-k] [文件]

-k 产生压缩文件后保留有源文件

功能描述: 压缩文件

压缩后文件格式: .bz2

注意: bzip2的压缩比例大,适用于压缩较大的文件

bunzip2解压缩

对目录压缩:tar.bz2

指令名称:write

指令权限:所有用户

语法:write 用户名

功能描述:给用户发消息 ,以ctrl + D保存

例子: write YX

命令名称:wall

英文原意:write all

执行权限:所有用户

语法:wall [message]

功能描述: 发广播信息

命令名称:ping

执行权限:所有用户

语法:ping 选项IP地址

-c 指定发送次数

功能描述: 测试网络连通性

例子: ping 192.168.1.156

命令名称:ifcongig

英文原意:interface configure

执行权限:root

语法:ifconfig 网卡名称 IP地址

功能描述:查看和设置网卡信息(设立之临时IP)

例子: ifconfig etho 192.168.1.156

etch0 本地真实网卡

lo 回环网卡 (用来本机通信个测试的)

cncap:。。网络名称是以太网

HWaddr: 16进制表示的 48位的 网卡的物理地址

addr:当前计算机IP地址

Bcast:当前网络地址

Mask:子网掩码

inet6 addr: 表示的是IPv6的地址信息

RX packets:接受数据包的总数量

TX packets:发送数据包的总数量

Base addtess: 网卡当中的物理位置

命令名称:mail (邮件命令)

执行权限:所有用户

语法:mail [用户名]

功能描述:查看发送电子邮件

发送:ctrl + D

查询: mail

例子: mail root

[图片上传中...(-d00bb9-1591253201012-0)]

命令名称:last

执行权限:所有用户

语法:last

功能描述:列出目前和过去登入系统的用户信息

命令名称:traceroute

执行权限:所有用户

语法:traceroute

功能描述:显示数据包到主机的路径

例子: traceroute

命令名称:netstat

执行权限:所有用户

语法:netstat [选项]

功能描述:显示网络相关信息

选项:

-t : TCP协议

-u : UDP协议

-l : 监听

-r : 路由

-n : 显示IP地址和端口号

例子:

netstat -tlun 查看本机监听的端口

netstat -an 查看本机所有网络链接

netstat -rn 查看本届路由表

命令名称:setup

执行权限:root

语法:setup

功能描述:配置网络(永久生效)

例子: setup

注意:配置网络结束后要重启网络服务

service network restart

挂在命令

命令名称:mount

执行权限:所有用户

语法:mount[-t 文件系统] 设备文件

例子: mount -t iso9660/dev/sr0/mnt/cdrom

命令名称:shutdown

[root@localhost~]#shutdown [选项] 时间

选项:- c : 取消前一个关机命令

- h:关机

- r :重启

特点:可以正确的关闭和保存服务,建议实用

其他关机命令

halt

poweroff (直接断电)

init 0

重启命令

reboot

init6

补充:init _ 的数字含义

init0 关机

init1 单用户(启动最小最核心的服务)

init2 不完全多用户,不含NFS服务(network file system 网络文件系统)

init3 完全多用户

init4 未分配

init5 图形界面

init6 重启

查询系统运行级别

runlevel

退出登录命令

logout

&1'>Linux 重定向符号以及2>&1

一个进程默认会打开标准输入、标准输出、错误输出三个文件描述符

文件描述符为0,小于号表示数据由文件流入命令

usage:

命令 file

#加入输入重定向,对输入文件进行计数

wc -l /etc/passwd

文件描述符为1,大于号表述数据由命令流入文件

所以: echo "hello" t.log 也可以写成 echo "hello" 1 t.log

会把文件的内容清空,再输入到新的文件

会把当前内容保持不变,然后在下一行进行追加

2 错误重定向,如果当前命令产生了错误,会把错误重定向到文件中,而不会打印到屏幕

无论内容正确还是错误都会把文件输出到文件中。

stderr的文件描述符为2,Unix程序会向stderr流中写入错误信息。

默认情况下, command file 将stdout 重定向到 file, command file 将stdin 重定向到 file。

如果希望 stderr 重定向到 file,可以这样写:

$ command 2file

如果希望 stderr 追加到 file 文件末尾,可以这样写:

$ command 2file 2 表示标准错误文件(stderr)

如果希望将 stdout 和 stderr 合并后重定向到 file,可以这样写:

$ command file 21 或者 $ command file 21

如果希望对 stdin 和 stdout 都重定向,可以这样写:

$ command file1 file2

command 命令将 stdin 重定向到 file1,将 stdout 重定向到 file2。

含义:将标准错误输出 重定向到 标准输出。

符号是一个整体,不可分开,分开后就不是上述含义了。

比如有些人可能会这么想:2是标准错误输入,1是标准输出,是重定向符号,那么"将标准错误输出重定向到标准输出"是不是就应该写成"21"就行了?是这样吗? 如果是尝试过,你就知道21的写法其实是将标准错误输出重定向到名为"1"的文件里去了


当前名称:linux大于号命令 linux中大于等于
网站链接:http://jkwzsj.com/article/doigged.html

其他资讯