您的位置:首页 > 运维架构 > Tomcat

tomcat配置

2013-03-08 09:10 155 查看
Linux有两个常用的查找命令:find和locate
find的特点通过搜寻硬盘来做实时查找,可以精确匹配,但是速度较慢。
locate是非实时查找,根据数据库来搜寻,因此速度更快,但是属于模糊查找,不够精确。

1.find

1.1 find的使用格式如下:
find [查找位置] [查找标准] [处理动作]查找位置:默认为当前目录;也可用.来表示当前目录,用~来代表家目录,用/来表示系统根目录。
查找标准:默认为查找指定目录下的所有文件;
处理动作:显示到标准输出;

1.2 查找标准有多个选项:-name "文件名称": 根据文件名查找,支持glob, *, [ ], ? 例如:
想要在当前目录及子目录中查找所有的‘*.txt’文件,可以用:
# find . -name  "*.txt"
想要的当前目录及子目录中查找文件名以一个大写字母开头的文件,可以用:
# find . -name  "[A-Z]*" -print
想要在/etc目录中查找文件名以host开头的文件,可以用:
# find /etc -name  "host*" -print


-iname "文件名称":根据文件名查找,不区分字符大小写;
-size [+-]SIZE:搜寻比 SIZE 还要大(+)或小(-)的文件。这个 SIZE 的规格有:
c: 代表 byte
k: 代表 kb
M: 代表MB
G: 代表GB 。
例如在当前目录下查找文件长度大于1M字节的文件
# find . -size  +1M
在/etc目录下查找文件长度小于为100字节的文件
# find /etc -size -100c

-type TYPE:搜寻文件的类型为 TYPE 的,类型主要有:f: 普通文件d: 目录b: 块设备c: 字符设备l: 符号链接p: 命名管道s: 套接字文件
例如要在/etc目录下查找所有的目录:
# find /etc -type d
在/etc目录下查找所有的符号链接文件:
# find /etc -type l


-perm [+-] MODE: 按照文件权限模式来查找文件
没有[+|-]表示精确权限匹配;
+MODE: 任何一类用户的任何一位权限匹配即可;
-MODE: 每类用户的每位权限都匹配;
例如在当前目录下查找文件权限位为755的文件,即文件属主可以读、写、执行,其他用户可以读、执行的文件:
# find . -perm 755
如果希望在当前目录下查找所有用户都可读、写、执行的文件:
# find . -perm  -007

-user USERNAME: 根据属主查找;-group GRPNAME: 根据属组查找;
-uid UID:根据UID查找-gid GID:根据GID查找
-nouser:查找没属主的文件;-nogroup: 查找没有属组的文件;
查找/home 底下属于Jerry 的文件
# find /home -user Jerry
查找系统中不属于任何人的文件
# find / -nouser


-mtime [+|-] n 与时间有关的选项:共有 -atime, -ctime 与 -mtime 。例如希望按照更改时间来查找文件,可以使用mtime选项。用减号-来限定更改时间在距今n日以内的文件,而用加号+来限定更改时间在距今n日以前的文件。
在系统根目录下查找更改时间在5日以内的文件:
# find / -mtime -5
在/var/log目录下查找更改时间在3日以前的文件:
# find /var/log -mtime +3
将系统上面过去24 小时内有更动过内容的文件列出:
# find / -mtime 0
注:0代表目前的时间

组合查找条件:-a: 与-o:或-not, !: 非
查找/usr目录下不属于root,bin,或student的文件:
#find /usr -not \( -user root -o -user bin -o -user student \)
#find /usr -not -user root -a -not -user bin -a -not -user student

1.3 处理动作:-print: 显示到标准输出;-ls: 显示查找到的文件的详细信息;-exec COMMAND \; 一旦find命令匹配到了相应的文件,就可以用-exec选项中的命令对其进行操作。exec选项后面跟随着所要执行的命令,然后是一对{},一个空格和一个\,最后是一个分号。
将/tmp目录下访问时间大于30天的文件重命名为原文件名.old
# find /tmp -atime +30 -exec mv {} {}.old \;
查找当前系统上没有属主或属组且最近1天内曾被访问过的文件,并将其属主属组均修改为root;
# find / \( -nouser -o -nogroup \) -a -atime -1 -exec chown root:root {} \;
-ok COMMAND \; 每次修改要求确认
2. locate
locate命令其实是"find -name"的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

locate命令的使用格式:
locate [-ir] keyword
-i :忽略大小写的差异;
-r :后面可接正规表示法的显示方式

找出系统中所有与passwd相关的文件:
# locate passwd
搜索etc目录下所有以sh开头的文件:
# locate /etc/sh
搜索用户主目录下,所有以m开头的文件:
# locate ~/m
搜索用户主目录下,所有以m开头的文件,并且忽略大小写
# locate -i ~/m
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: