二周第五次课

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二周第五次课相关的知识,希望对你有一定的参考价值。

2.23/2.24/2.25 find命令
which   从环境变量中查找
whereis 定期更新后才能用
locate  yum -y install mlocate 
每天四点更新,手动更新updatedb,locate命令搜不到tmp下的文件,
ctrl+ l 清屏
ctrl + d    退出
ctrl + c    停止
ctrl + u    往前删除一行
ctrl + w    删除一个字符串
ctrl + a    行首
ctrl + e    行尾
find /etc/ -name "sshd_config"  
find /etc/ -name "sshd*"    
find /etc/ -type d -name "sshd*"    查目录带sshd
find /etc/ -type f -name "sshd*"    查文件带sshd
find /etc/ -type l | xargs -i ls -l {} | more    查找软连接并列出信息
find /dev -type b | xargs -i ls -l {} | more    查找块链接并列出信息
find /dev -type c | xargs -i ls -l {} | more  查找字符串设备并列出信息

find的参数:

-amin<分钟>:查找在指定时间曾被存取过的文件或目录,单位以分钟计算;
-anewer<参考文件或目录>:查找其存取时间较指定文件或目录的存取时间更接近现在的文件或目录;
-atime<24小时数>:查找在指定时间曾被存取过的文件或目录,单位以24小时计算;
-cmin<分钟>:查找在指定时间之时被更改过的文件或目录;
-cnewer<参考文件或目录>查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录;
-ctime<24小时数>:查找在指定时间之时被更改的文件或目录,单位以24小时计算;
-daystart:从本日开始计算时间;
-depth:从指定目录下最深层的子目录开始查找;
-expty:寻找文件大小为0 Byte的文件,或目录下没有任何子目录或文件的空目录;
-exec<执行指令>:假设find指令的回传值为True,就执行该指令;
-false:将find指令的回传值皆设为False;
-fls<列表文件>:此参数的效果和指定“-ls”参数类似,但会把结果保存为指定的列表文件;
-follow:排除符号连接;
-fprint<列表文件>:此参数的效果和指定“-print”参数类似,但会把结果保存成指定的列表文件;
-fprint0<列表文件>:此参数的效果和指定“-print0”参数类似,但会把结果保存成指定的列表文件;
-fprintf<列表文件><输出格式>:此参数的效果和指定“-printf”参数类似,但会把结果保存成指定的列表文件;
-fstype<文件系统类型>:只寻找该文件系统类型下的文件或目录;
-gid<群组识别码>:查找符合指定之群组识别码的文件或目录;
-group<群组名称>:查找符合指定之群组名称的文件或目录;
-help或——help:在线帮助;
-ilname<范本样式>:此参数的效果和指定“-lname”参数类似,但忽略字符大小写的差别;
-iname<范本样式>:此参数的效果和指定“-name”参数类似,但忽略字符大小写的差别;
-inum<inode编号>:查找符合指定的inode编号的文件或目录;
-ipath<范本样式>:此参数的效果和指定“-path”参数类似,但忽略字符大小写的差别;
-iregex<范本样式>:此参数的效果和指定“-regexe”参数类似,但忽略字符大小写的差别;
-links<连接数目>:查找符合指定的硬连接数目的文件或目录;
-iname<范本样式>:指定字符串作为寻找符号连接的范本样式;
-ls:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出;
-maxdepth<目录层级>:设置最大目录层级;
-mindepth<目录层级>:设置最小目录层级;
-mmin<分钟>:查找在指定时间曾被更改过的文件或目录,单位以分钟计算;
-mount:此参数的效果和指定“-xdev”相同;
-mtime<24小时数>:查找在指定时间曾被更改过的文件或目录,单位以24小时计算;
-name<范本样式>:指定字符串作为寻找文件或目录的范本样式;
-newer<参考文件或目录>:查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录;
-nogroup:找出不属于本地主机群组识别码的文件或目录;
-noleaf:不去考虑目录至少需拥有两个硬连接存在;
-nouser:找出不属于本地主机用户识别码的文件或目录;
-ok<执行指令>:此参数的效果和指定“-exec”类似,但在执行指令之前会先询问用户,若回答“y”或“Y”,则放弃执行命令;
-path<范本样式>:指定字符串作为寻找目录的范本样式;
-perm<权限数值>:查找符合指定的权限数值的文件或目录;
-print:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式为每列一个名称,每个名称前皆有“./”字符串;
-print0:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式为全部的名称皆在同一行;
-printf<输出格式>:假设find指令的回传值为Ture,就将文件或目录名称列出到标准输出。格式可以自行指定;
-prune:不寻找字符串作为寻找文件或目录的范本样式;
-regex<范本样式>:指定字符串作为寻找文件或目录的范本样式;
-size<文件大小>:查找符合指定的文件大小的文件;
-true:将find指令的回传值皆设为True;
-typ<文件类型>:只寻找符合指定的文件类型的文件;
-uid<用户识别码>:查找符合指定的用户识别码的文件或目录;
-used<日数>:查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算;
-user<拥有者名称>:查找符和指定的拥有者名称的文件或目录;
-version或——version:显示版本信息;
-xdev:将范围局限在先行的文件系统中;
-xtype<文件类型>:此参数的效果和指定“-type”参数类似,差别在于它针对符号连接检查。

‘stat’ 命令可用来列出文件的 atime、ctime 和 mtime
atime 访问时间
mtime 修改内容修改文件权限只涉及到了inode属性更改,不会更改文件内容大小,所有更改文件权限mtime是不会变化的
ctime 修改权限、内容、名字

find /root -type f -mtime -1    查找一天内修改的文件
find /root -type f -mtime +1 | xargs -i ls -l {}    一天前修改过的文件
find /root -type f -ctime +1 | xargs -i ls -l {}    一天前访问过的文件
find /root -type f -ctime -1 -name "*.txt" | xargs -i ls -l {}  查找一天内修改的文件并且是txt类型
find /root -type f -o -ctime -1 -o  -name "*.txt" | xargs -i ls -l {}   查找root下一天内修改的或者是文件或者是txt类型,-o是或者的意思
find / -inum 942    查找iNode号多少的文件
find /root/ -type f -mmin -60 | xargs -i ls -l {}   查找1个小时内修改的文件
find /root/ -type f -mmin -60 -exec ls -l {} \; 查找60分钟内修改的文件
find /root/ -type f -mmin -1800 -exec mv {} {}.bak \;   查找并移动或者重命名为bak后缀,
第一个{}表示的是前面find /root/ -type f -mmin 120查找出来的文件的总概括:
第二个{}表示的是把他更改成bak时候的前缀了。
find /root/ -type f -size -10k -exec ls -lh {} \;   查找小于10k的文件
find /root/ -type f -size +10M -exec ls -lh {} \;   查找大于10mb文件
find ./ -regextype posix-extended -regex ".*\.(java|xml)"   查找当前文件夹下面的所有java文件和xml文件,等同于find ./ -name "*.java" -o -name "*.xml"
find /root/ -type f -name "*.bak" -exec rename .txt.bak .txt  {} \; 把加了后缀bak的去掉bak后缀
find /root/ -user aiker -exec ls -l {} \;   查找root下aiker的文件

2.26 文件名后缀

Linux文件的后缀名并不代表他是什么类型的文件,我们可以自定义文件名和后缀,只不过是管理员通常会把相同类型的文件定义成相同的后缀名,方便我们去区分,比如我们习惯把压缩文件习惯性命名为.gz,配置文件后缀名为.conf,但是你也可以把其他文件命名成.gz,也是可以的.

echo $LANG ``查看终端语言

以上是关于二周第五次课的主要内容,如果未能解决你的问题,请参考以下文章

2018.3.30 二周第五次课

二周第五次课(2月2日)

二周第五次课 2.23/2.24/2.25 find命令 2.26 文件名后缀

Linux 20180413 二周第五次课(3月30日) 2.23 find命令 文件名后缀

一周第五次课(12月15日)

九周第五次课(2月27日)