1、命令名称:which(查看命令文件位置和命令可能出现的别名)
命令格式:which 命令
执行命令alias可以显示设置了别名的命令;
临时性的添加命令别名:alias lld='ls -ldh' 设置可以代替ls -ldh的命令lld,删除别名unalias 别名
alias永久设置别名
设置别名每次登入可用 alias命令只作用于当次登入的操作。如果想每次登入都能使用这些命令的别名,则可以把相应的alias命令存放在 /root/.bashrc 文件中。 打开vim /root/.bashrc文件,输入要设置的alias命令,保存,然后运行source /root/.bashrc 如果这样还不行,表示没有/root/.bash_profile文件或文件中没有执行/root/.bashrc文件 可以在/root/.bash_profile中加入命令 source /root/.bashrc 后保存 这样就可以每次登入后都可以使用设置好的命令别名。 |
2、whereis(查找命令及帮助文档所在位置)
命令格式:whereis 命令
查看命令的帮助文档:man 命令
3、locate(按照文件名查找,按照数据库查找)
按照文件名查找
按照数据库查找
命令执行前要先更新数据库:执行命令updatedb
locate命令的使用实例:
# locate /etc/sh
搜索etc目录下所有以sh开头的文件。
在使用locate命令时,要使用绝对路径查询。
4、命令名称:find(搜索系统中符合条件的文件)
-name 根据文件名查找
通配符:”*” 任意多个字符
find / -name "aaa*"查找根目录下所有以ab开头的文件
? 任意一个字符
find / -name aaa?查找根目录下所有以aaa开头的字符名长度为4的文件
“[] “指定范围
find / -name “aaa[1-3]”查找根目录下的所有aaa开头,第三位为1-3的文件
Linux统计空间大小:df命令 -h显示存储单位
-size 根据大小查找
find ./ -size -10k 查找小于10k的文件或目录
find ./ -size -10M 查找小于10M的文件或目录
find ./ -size +10G 查找大于10G的文件或目录
-user 根据所有者查找
find / -user use1查找/下所有use1用户的文件
如果将用户删掉,家目录(/home/user1)也删掉,如果在家目录之外的其他目录创建文件的话,这些文件不会删除,结果是,用户创建的文件还在,用户不在了。对于文件来说,用户的所有者和所属组不能用user1表示了,UID和GID定义所有者和所属组,变成纯数字。用户删除,ID号码不会删除,有新用户创建时,ID号码继续使用,文件的所有者和所属组变为新建用户
-group 根据所属组查找
find / -group use1查找/下所有use1组的文件
-perm 根据文件权限查找
find /boot -perm 644
-按时间查找
按天 -ctime -atime -mtime
按分钟 -cmin -amin -mmin
c change 表示属性被修改过:所有者、所属组、权限
a access 被访问过(被查看过)
m modify 表示内容被修改过
find /etc -mmin -120 查找120分钟内内容被修改过的
find /etc -ctime +7 查找七天之前属性被修改过的
-type 根据文件类型查找
-type f 二进制文件(普通文件)
-type l 软连接文件
-type d 目录
-逻辑连接符 -a (and 逻辑与); -o (or 逻辑或) ;| xargs
xargs命令:把前一个命令输出的结果当成多个参数。
例:find /etc -size +1k -a -size -10k
在etc目录小查找大于1k并且小于10k的文件
-exec命令执行连接符(对查找到的文件,进一步处理)只适用于find命令
find ... -exec 命令 {} \;
{}表示find查询的结果集
\是转义符,不适用命令别名,直接使用命令本身
;分号是表示语句结束
注:
转义符:在Linux中有个别名机制,如rm删除文件,执行的却是rm -i(用which rm可以查看命令别名)使用rm删除文件前会提示确认信息,就因为rm -i 这个参数。如果想使用 命令原义,可以在加\转义。如:\rm test.txt 不会提示,直接删除。
-inum 根据文件i节点查询
find / -inum 34119861 -exec ls -lih {} \;
有一些文件的硬链接数量有很多,有相同的i节点,查找其中的一个文件的i节点号,一次性删除
5、grep “字符串” 文件名(在文件内查找符合条件的字符串行)
-v 反向选择 (显示文件中所有不包含某字符的行)
-i 忽略大小写 (不论命令行里查询字符输入的是大写还是小写,查询结果不受影响)
grep命令以行为单位过滤数据,只显示包含查询字符的行。
管道符
格式:命令1 | 命令2 将命令1 的标准输出作为命令2的标准输入
举例:cat /etc/passwd | grep “root”
注意:通道符|后不适用需要输入路径的命令;
通道符|后加xargs命令,可以将前命令的执行结果拆分成多个执行对象(举例:find /root -name “aaa*” | xargs ls -l)
命令补充:touch ./aaa{a..e}
# 在/root目录下新建aaaa,aaab,aaac,aaad,aaae共5个文件