提示符
[root@xiaoming ~] #
解释:
- root 当前登录⽤户
- xiaoming 主机名
- ~ 当前⼯作⽬录,默认是当前⽤户的家⽬录,root就是/root,普通⽤户是 /home/⽤户名
- 提示符 超级⽤户是 #,普通⽤户是$
命令格式
由下面部分组成:
命令 [选项] [参数]
当有多个选项时,可以写在⼀起,有简化和完整写法两种 -a 与 —all 等效
ls
- 作用
查询⽬录中的内容
ls [选项] [⽂件或者⽬录] - 选项
-a 显示所有⽂件,包括隐藏⽂件
-l 显示详细信息
-d 查看⽬录本身的属性⽽⾮⼦⽂件 ls /etc/
-h ⼈性化的⽅式显示⽂件⼤⼩
-i 显示inode,也就是i节点,每个节点都有ID号
默认当前⽬录下的⽂件列表
cd
- change directory
切换所在⽬录 change directory - cd [⽬录]
~ 家⽬录
-上次⽬录
. 当前⽬录
.. 上级⽬录
pwd
显示当前⽬录 pwd
rmdir
删除⽬录 remove empty directory
rmdir [⽬录名]
rm
删除⽂件或者⽬录 remove
rm [⽂件或者⽬录]
-r 删除⽬录
-f 强制删除
rm -rf [⽂件或者⽬录] 递归强制删除所有⽬录
cp
copy 复制命令
copy [源⽂件或者⽬录] [⽬标⽂件]
-r 复制⽬录,默认是复制⽂件
-p 连带⽂件属性复制
-d 若源⽂件是链接⽂件,则复制连接属性
-a 相当于 -rpd
mv
移动⽂件或者改名 move
mv [源⽂件或者⽬录] [⽬标⽂件]
ln
链接命令,⽣成链接⽂件 link
硬链接特征
拥有相同的i节点和存储block块,可以看作是同⼀个⽂件
可以通过i节点访问
不能跨分区
不能针对⽬录使⽤
⼀般不使⽤
软链接特征
ln -s [源⽂件] [⽬标⽂件]
-s 创建软链接
类似Windows快捷⽅式
软链接拥有⾃⼰的i节点和Block块,但是数据块中只保存源⽂件的⽂件名和i节点号,并没有实际的
⽂件数据
lrwxrwxrwx l 软链接 软链接的⽂件权限都是 777
修改任意⼀个⽂件,另⼀个都会改变
删除源⽂件,软链接不能使⽤
软链接源⽂件必须写绝对路径
locate
- 在后台数据库中按⽂件名搜索,速度⽐较快
- 数据保存在 /var/lib/mlocate 后台数据库,每天更新⼀次
- 可以 updatedb 命令⽴刻更新数据库
- 只能搜索⽂件名
whereis
- 搜索命令所在路径以及帮助⽂档所在位置
-b 只查找可执⾏⽂件
-m 只查找帮助⽂件
whereis 命令名
eg: $ whereis ls
which
可以看到别名 which ls
但是,它能看到的都是外部安装的命令,⽆法查看Shell⾃带的命令,如 which cd;
文件搜索:find
⽂件搜索命令
find [搜索范围] [搜索条件]
按名称搜索
避免⼤范围的搜索,会⾮常消耗系统资源
$ find / -name aaa.log
通配符
find是在系统当中搜索符合条件的⽂件名,如果需要匹配,使⽤通配符匹配,通配符是完全匹配
通配符
匹配任意内容
? 匹配任意⼀个字符
[] 匹配任意⼀个中括号内的字符$ find . -name "ab[cdef]"
按所有者进⾏搜索
-user
$ find /root -user root$ find /root -nouser
按照时间搜索
$ find /nginx/access.log -mtime +5
atime ⽂件访问时间
- ctime 改变⽂件属性
- mtime 修改⽂件内容
后面+5的意思是: - -5 5天内修改的⽂件
- 5 5天前当前修改的⽂件
- +5 5天前修改的⽂件
按⼤⼩搜索
-size
$ find . -size 100k
综合DEMO:
$ find /tmp -size +10k -a -size -20k
查找/etc⽬录下,⼤于10KB并且⼩于20KB的⽂件
-a and 逻辑与,两个条件都满⾜
-o or 逻辑或,两个条件满⾜⼀个就可以
