继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Linux 基本命令分类学习

_So_
关注TA
已关注
手记 12
粉丝 42
获赞 398

Linux和Windows不同

  • 严格区分大小写
  • 一起内容皆文件,包括硬件
  • Linux不靠扩展名区分文件,只是有一些约定俗成的符号。常见扩展名可以不写,写了更好。

文件权限

-rw-r--r--

  • 第一位表示文件类型(-文件 d目录 l软连接文件)
  • 后面九位,三位一组,分别控制所有者(u)、所属组(g)、其他人(o)对该文件的权限
  • r读 w写 x执行
常见命令

文件相关

  • ls [选项] [文件或目录]
    -a 显示所有文件,包括隐藏文件
    -l 显示详细信息
    -d 查看目录属性
    -i 显示inode
    -h h表示字节大小显示为人可读的形式,即human缩写,很多命令都可以用h修饰

目录处理命令

  • mkdir -p [目录名] #创建目录
    • p 递归建立 mkdir -p first/second/a
    • make directories 缩写
  • cd [目录名] #切换目录
    • cd ~ 回到当前用户家目录
    • cd 直接回车同上
    • cd .. 上级目录
    • cd - 进入上次所在目录
  • rmdir [目录名] #删除空目录
  • rm [文件名] #删除目录或文件
    • -r 删除目录
    • -f 强制删除
    • rm /temp/ 表示删除目录下的所有文件,没有 *就连目录一起删了
  • cp [选项] [要目录或文件] #复制 [目标目录](是目录表示原名复制,加上文件名是改名复制)
    • -r 复制目录
    • -p 连文件带属性复制
    • -d 若源文件是链接文件,则复制链接文件属性
    • -a 相当于 -rpd,上面所有
  • mv [源文件或目录] [目标目录] #改名和剪切
    • move

链接命令

  • ln -s [源文件] [目标文件] #生成链接文件
    • link
    • -s 创建软连接(soft)

文件搜索命令

  • locate [文件名] 文件搜索命令,只能搜索文件名
    • locate 是基于每天更新的文件索引数据库来搜索的,速度快,但不是时事的,一般新建的文件要等一天才能被搜到
    • updatedb 命令,强制更新索引数据库
    • /etc/updatedb.conf配置文件:开启搜索限制;搜索时不搜索的文件系统;不搜索的文件类型;不搜索的路径
  • whereis [命令名] # 命令的搜索命令
    • 只能搜索系统命令,不能搜索自己创建的命令
    • 搜索命令所在路径及帮助文档所在位置
    • -b 只查找可执行命令
    • -m 只查找帮助文件
  • which [文件名] # 命令的搜索命令
    • 搜索命令所在位置及别名
  • find [搜索范围] [搜索条件] #文件搜索命令

    • 搜索的是文件名,必须一模一样,也支持通配符搜索
    • 使用通配符的时候,需要用双引号引住整个字符串
    • *匹配任意字符
    • ?匹配任意一个字符
    • []匹配任意一个中括号内的字符
    • find /root -iname install.log #不区分大小写
    • find /root -user root #按照所有者搜查
    • find /root -nouser #查找没有所有者的文件
    • find /var/log/ -mtime +10 #查找10天前修改的文件
      • -10 10天内修改的文件
      • 10 10天前当天修改的文件
      • +10 10天前修改的文件
      • atime 文件访问时间
      • ctime 改变文件属性
      • mtime 修改文件内容
    • find . -size 25k #查找文件大小是25k的文件
      • -25k 小于25k的文件
      • 25k 等于25k的文件
      • 25k 大于25k的文件
      • k是小写,M是大写
    • find -inum 265797 #查找i节点是265797的文件
    • find /etc -size +20k -a -size -50k
      • 查找大于20k小于50k的文件
      • -a and 逻辑与,两个条件都满足
      • -o or 逻辑或,两个条件满足一个
    • find /etc -size +20k -a -size -50k -exec ls -lh {} \;
      • -exec 第一条命令产生的结果,交给第二条命令来处理
      • 本条命令是对找到的文件列出详细信息
      • {} \; 是标准格式要求
  • grep [选项] 字符串 文件名 #搜索字符串命令
    • 在文件当中匹配符合条件的字符串,包含式匹配
    • -i 忽略大小写
    • -v 排除指定字符串
    • grep -v "shuan" aaa.txt
    • 可以使用正则表达式

帮助命令

  • man 命令 #获取指定命令的帮助
    • manual
    • man -f 查看命令拥有哪个级别的帮助文档
    • man -5 passwd
    • man -k 查看和命令相关的所有帮助,相当于apropos [命令]
  • 命令 --help # 获取命令选项的帮助
  • help shell内部命令 #shell内部命令帮助
    • help cd #cd是shell内部命令
    • 可以用whereis cd确定是不是内部命令,内部命令找不到文件位置
  • info [命令] # 详细命令帮助

压缩命令

  • 常用压缩格式:.zip .gz .bz2 .tar.gz .tar.bz2
  • .zip格式
    • zip 压缩文件名 源文件 #压缩文件
    • zip -r 压缩文件名 源目录 # 压缩目录
    • unzip 解压文件名
  • .gz格式
    • gzip 源文件 #压缩为.gz格式的压缩文件,源文件会消失
    • gzip -c 源文件 > 压缩文件 #压缩文件保留,-c是输出到屏幕,>是输出重定向
    • gzip -r 目录 #压缩目录下所有子文件,但是不能压缩目录
    • gunzip 压缩文件 #解压缩
  • .bz2格式压缩
    • bzip2 源文件 #压缩为.bz2格式,不保留源文件
    • bzip2 -k 源文件 # 压缩之后保留源文件
    • 不能压缩目录
    • bunzip 压缩文件 #解压缩
  • tar -cvf 打包文件名 源文件 # 打包命令tar
    • -c 打包
    • -v 显示过程
    • -f 指定打包后的文件名
    • 对于不能压缩目录的压缩格式,先打包在压缩就解决了
    • -x 解打包
    • -z 压缩为.tar.gz格式
    • tar -zxvf 压缩包名.tar.gz
    • -j 压缩问.tar.bz2格式
    • tar -zcvf 压缩包名.tar.gz -C /tmp/ #指定解压缩位置
    • tar -zcvf a.tar.gz a test/ #空格隔开压缩多个文件
    • -t 只查看,不解压

关机和重启命令

  • shutdown [选项] 时间
    • -c 取消前一个关机命令
    • -h 关机
    • -r 重启
    • shutdown -r now
    • 可以正确保存服务器内部的状态
  • reboot 重启
  • init 6 重启 (0-6 7个系统运行级别,runlevel命令可以查看)
  • cat /etc/inittab 修改系统默认运行级别,可以指定启动后是进入图形界面还是字符界面
  • logout #退出登录命令

挂载命令

  • 挂载就是分配盘符
  • 查询与自动挂载
    • mount #查询系统中已经挂载的设备
      • -a #依据配置文件/etc/fstab的内容,自动挂载
  • 挂载命令格式
    • mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
    • -t 文件系统:加入文件系统类型来指定挂载的类型,可以是ext3、ext4、 iso9660等文件系统
    • -o 特殊选项:可以指定挂载的额外选项
    • 挂载点:已经存在的空白目录
    • mount /dev/sr0 /mnt/cdrom #挂载光盘
    • unmount /mnt/cdrom #卸载光盘,必须卸载
  • 挂载u盘
    • fdisk -l #查看U盘设备文件名
    • mount -t vfat /dev/sdb1 /mnt/usb #linux不支持NTFS文件系统

查看用户登录命令

  • w [用户名] #查看登录用户信息
    • 命令输出:
      • user: 登录用户名
      • TTY: 登录终端
      • FROM:从哪个ip地址登录
      • LOGIN@:登录时间
      • IDLE:用户闲置时间
      • JCPU:和该终端连接的所有进程所占用的时间。不包括过去的后台作业所占用的时间,但包括当前正在进行的后台作业所占用的时间。
      • PCPU:当前进程所占用的时间
      • WHAT:当前正在运行的命令
  • last #查询当前登录和过去登录的用户信息
    • last命令默认是读取/var/log/wtmp文件数据
    • 命令输出
      • 用户名
      • 登录终端
      • 登录ip
      • 登录时间
      • 退出时间
  • lastlog #查看所有用户的最后一次登录时间
    • 默认读取的是/var/log/lastlog文件的内容
常用目录说明
  • 根目录下的bin和sbin目录,usr下的bin和sbin目录都是用来保存系统命令的。bin下的是所有用户都能执行的命令,sbin保存的是只有root用户才能执行的命令
  • boot目录是启动引导目录
  • etc目录是配置文件目录
  • home是普通用户的家
  • root是超级用户的家
  • lib是函数库保存目录
  • /mnt系统挂载目录
  • /sys和/proc不能直接操作,保存的是内存的过载点
  • /tmp临时目录
  • /usr系统软件资源保存目录
  • /var保存系统可见文档目录
打开App,阅读手记
6人推荐
发表评论
随时随地看视频慕课网APP

热门评论

查看全部评论