linux学习笔记之查看文件状态及修改文件时间

来源:互联网 发布:计价软件 编辑:程序博客网 时间:2024/05/18 03:37
文件搜索命令:locate,whereis,which,find,grep
locate 文件名
需要注意的是:
1.在后台数据库中按文件名搜索,搜索速度更快,locate命令所搜索的数据库为/var/lib/mlocate,但mlocate数据库是一天一更新,故可以使用updatedb命令来强制更新数据库
2.locate搜索是按照/etc/updatedb.conf配置文件来进行筛选(whereis与which同样遵守这配置文件)
REUNE_BIND_MOUNTS="yse" #开启搜索限制(用于控制下面的筛选规则是否生效)
PRUNEFS= #搜索时,不搜索的文件系统
PRUNENAMES= #搜索时不搜索的文件系统
PRUNEPATHES= #搜索时不搜索的文件路径


whereis 命令名 #搜索系统命令所在路径及帮助文档所在位置,不能搜索普通文件位置
-b:只查找可执行文件 binaries
-m:之查找帮助文件 manual


which 命令名 #搜索命令所在路径及别名


whoami #获取当前登录用户


whatis 命令名 #获取命令的用途 


需要注意的是:cd命令是shell的内置命令,所以用which与whereis查找不到命令的可执行文件


环境变量是指定义用户操作环境的变量(命令的环境变量是指系统搜索命令的可执行文件的路径)
[root@localhost ~] # echo $PATH
/usr/lib/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin


echo命令的功能是在显示器上显示一段文字一般起到提示作用
http://www.cnblogs.com/perfy/archive/2012/07/24/2605903.html


find [搜索范围] [搜索条件] #在系统中搜索符合条件的文件名(如果需要匹配使用通配符匹配通配符是完全匹配)
如find /-name install.log
-iname 不区分大小写搜索
-user 按照文件的所有者搜索如find /root -user root
-nouser 没有所有者的文件如find /root -nouser
需要注意的是:linux中的文件是都应该有所有者的,没有所有者的文件为垃圾文件需要手动删除,除了内核产生的文件或外来文件会没有所有者
linux的常用通配符
*匹配任意内容
?匹配任意一个字符
[]匹配任意一个括号内的字符
find /var/log -mtime +10 #查找10天前修改的文件
+10代表10天前修改的文件,-10代表10天内修改的文件,10代表10天当天修改的文件
find . -size 25k #查找当前目录下文件大小是25k的文件
+25k代表大于25k,25k代表等于25k,-25k代表小于25k
find . inum 262422 #查找i结点是262422的文件
find /etc -size +20k -a -size -50k #查找/etc/目录下,大于20k并且小于50kb的文件
-a and 逻辑与,两个条件都满足
-o or 逻辑或,两个条件满足一个即可
find /etc -size +20 -a -size -50 -exec ls -lh{}\; 
#查找ect目录下,大于20kb,小于50kb的文件并显示详细信息 
-exec [命令名] {}\; #对搜索的结果执行操作


grep [选项] 字符串 文件名 #在文件中匹配符合条件的字符串,如果需要匹配使用正则表达式进行匹配,正则表达式属于包含匹配
-i 忽略大小写
-v 排除指定字符串


stat [文件名]  #用于查看文件状态
文件的三个时间
access time (atime) 文件访问时间,即指取用文件内容时的时间如用cat读取就会更新这个时间
modifiy time(mtime) 文件修改时间,即指文件内容被修改
change time(ctime) 文件存取时间,即指文件的"状态"改变,如修改了文件的权限,属性等
使用ls查看文件时间如
ls -l --time=ctime install.log
修改文件时间:
touch [文件名] 若该文件已经存在则该文件的三个时间都会更新为当前时间若改文件不存在,则会主动建立一个新的空文件
-a 仅更新atime
-c 仅更新ctime
-m 仅更新mtime
-t 后面接时间[YYMMDDHHMM.SS]

























原创粉丝点击