提示符

  1. [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 [搜索范围] [搜索条件]

按名称搜索

避免⼤范围的搜索,会⾮常消耗系统资源

  1. $ find / -name aaa.log

通配符

find是在系统当中搜索符合条件的⽂件名,如果需要匹配,使⽤通配符匹配,通配符是完全匹配
通配符

  • 匹配任意内容
    ? 匹配任意⼀个字符
    [] 匹配任意⼀个中括号内的字符

    1. $ find . -name "ab[cdef]"

    按所有者进⾏搜索

    -user

    1. $ find /root -user root
    2. $ find /root -nouser

    按照时间搜索

    1. $ find /nginx/access.log -mtime +5
  • atime ⽂件访问时间

  • ctime 改变⽂件属性
  • mtime 修改⽂件内容
    后面+5的意思是:
  • -5 5天内修改的⽂件
  • 5 5天前当前修改的⽂件
  • +5 5天前修改的⽂件

按⼤⼩搜索

-size

  1. $ find . -size 100k

综合DEMO:

  1. $ find /tmp -size +10k -a -size -20k

查找/etc⽬录下,⼤于10KB并且⼩于20KB的⽂件
-a and 逻辑与,两个条件都满⾜
-o or 逻辑或,两个条件满⾜⼀个就可以