Linux学习笔记(1)

一、安装

Linux中一切皆文件。

1.磁盘分区

  • 一个硬盘最多有4个主分区(1-4),其中可以将其中的一个主分区变为扩展分区(最多一个),扩展分区可在分为多个逻辑分区(编号一定从5开始,1-4必须被主分区和逻辑分区使用)。

2.挂载

必须分区
  • /(根分区)
  • swap分区(交换分区,内存2倍,不超过2GB)
推荐分区
  • / boot(启动分区,200MB)
    ![avatar][test_imag]
  • /boot /home均属于/(根目录)的子目录,但在硬盘上有各自独立的存储空间。
  • Linux中用目录作为盘符,称为挂载点

二、Linux常用命令

目录

  • 家目录(~):超级用户(/root) 普通用户(/home/user)

命令格式

  • 命令 [选项] [参数]
    注意:个别命令使用不遵循此格式。 当有多个选项时,可以写在一起简化选项 -a等于–all

  • ls [选项] 【文件或目录】
    选项:

    -a 显示所有文件,包括隐藏文件
    -l 显示详细信息
    -d 查看目录属性
    -h 人性化显示文本大小
    -i 显示inode

    文件类型(-文件 d目录  l软链接文件)


目录处理命令和文件处理命令

1.建立目录
  • mkdir -p [目录名]

    -p递归创建

2.切换目录
  • cd [目录]
  • 简化操作

    cd ~ (cd) 进入当前用户的家目录
    cd - 进入上次所在目录
    cd … 进入上一级目录
    cd . 进入当前目录

3.显示当前工作目录
  • pwd
4.删除空目录
  • rmdir [目录名]
  • rm -rf [文件或目录名]

    强制删除目录

5.复制命令
  • cp [选项] [原文件或目录] [目标目录]

    选项:
    -r 复制目录
    -p 连带文件属性复制
    -d 若源文件是链接文件,则复制链接属性
    -a 相当于 -pdr

6.剪切或改名命令
  • mv [原文件或目录] [目标目录]
7.常用目录的作用
  • / 根目录
  • bin 命令保存目录(普通用户就可以读取的命令)

    根目录下的bin和sbin,us目录下的bin和sbin,这四个目录都是用来保存系统命令的。
    区别在于bin普通用户就可执行,sbin超级用户执行的命令。

  • /boot 启动目录,启动相关文件
  • /dev 设备文件保存目录
  • /etc 配置文件保存目录
  • /home 普通用户的家目录
  • /lib 系统库保存目录
  • /mnt 系统挂载目录

    空目录,用来挂载磁盘。

  • /media 挂载目录
  • /root 超级用户的家目录
  • tmp 临时目录
  • /sbin 命令保存目录(超级用户才能使用的目录)
  • /proc 直接写入内存的

    proc和sys目录不能直接操作,这两个目录保存的是内存的过载点。

  • /sys
  • /usr 系统软件资源目录

    /usr/bin/ 系统命令(普通用户)
    /usr/sbin/ 系统命令(超级用户)
    /var 系统相关文档内容

链接命令

  • ln -s [原文件] [目标文件]
  • 功能描述:生成链接文件

    选项: -s 创建软链接

    • 硬链接特征:
      1、拥有相同的i节点和存储block块,可以看做是同一个文件
      2、可通过i节点识别(i节点完全相同)
      3、不能跨分区创建
      4、不能针对目录使用
      5、删除原文件硬链接仍可使用
    • 软链接特征:
      1、类似Windows快捷方式
      2、软链接拥有自己的i节点和Block块,但是数据块中只保存源文件的文件名和i节点号,并没有实际的文件数据
      3、lrwxrwxrwx l软链接
      软链接文件权限都为rwxrwxrwx
      4、修改任意文件,另一个都改变
      5、删除原文件,软连接不能使用
      6、原文件一定要写绝对路径
      在这里插入图片描述

文件搜索命令

  • locate 文件名
    在后台数据库中按文件名搜索,搜索速度更快
    • /var/lib/mlocate
      #locate命令所搜索的后台数据库(默认一天一更新)
    • updatedb
      更新数据库
  • whereis 命令名
    #搜索命令所在路径及帮助文档所在位置
    • 选项:
      -b:只查找可执行文件
      -m:只查找帮助文件
  • which 命令名
    #搜索命令所在路径及别名
  • PATH环境变量
    定义的是系统搜索命令的路径
  • find 【搜索范围】 【搜索条件】
    #搜索文件
    • find / -name install.log
      #避免大范围搜索,会非常耗费系统资源
      find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配

      Linux中的通配符:
      * 匹配任意内容
      ?匹配任意一个字符
      [] 匹配任意一个中括号的字符

    • 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
      #查找当前路径下文件大小是25KB的文件

      -25k 小于25KB的文件
      25k 等于25KB的文件
      +25k 大于25KB的文件

    • find . -inum 262422
      #查找当前路径下i节点是262422的文件
    • find /etc -size +20k -a -size -50k
      #查找/etc/目录下,大于20KB并且小于50KB的文件

      -a and(逻辑与)
      -o or(逻辑或)

    • find /etc -size +20k -a -size -50k -exec ls -lh {} ;
      #查找/etc/目录下,大于20KB并且小于50KB的文件,并显示详细信息

      -exec/-ok 命令 {} ; 对搜索结果执行操作

  • grep [选项] 字符串 文件名
    #在文件当中匹配符合条件的字符串

    选项:
    -i 忽略大小写
    -v 排除指定字符串


帮助命令

1.帮助命令man
  • man 命令
    • man ls
      #查看ls的帮助

    • man的级别
      1.查看命令的帮助
      2.查看可被内核调用的函数的帮助
      3.查看函数和函数库的帮助
      4.查看特殊文件的帮助(主要是/dev目录下的文件)
      5.查看配置文件的帮助
      6.查看游戏的帮助
      7.查看其它杂项的帮助
      8.查看系统管理员可用命令的帮助
      9.查看和内核相关文件的帮助

      查看命令拥有哪个级别的帮助
      man -f 命令
      相当于
      whatis 命令
      例如:man -5 passwd

      查看和命令相关的所有帮助
      man -k 命令
      相当于
      apropos 命令

2.选项帮助
  • 命令 --help
    #获取命令选项的帮助
    例如 ls --help
2.shell内部命令帮助
  • help shell内部命令
    #获取shell内部命令的帮助
    例如
    • whereis cd
      #确定是否是shell内部命令,找不到执行文件就是内部命令
      
    • help cd
      #获取内部命令帮助
      
3.详细命令帮助info
  • info 命令
    •  -回车:进入子帮助页面(带有*号标记) 
      
    •  -u:进入上层页面 
      
    •  -n:进入下一个帮助小节 
      
    •  -p:进入上一个帮助小节 
      
    •  -q:退出
      

压缩与解压缩命令

1.常见压缩格式

.zip .gz .bz2 .tar.gz .tar.bz2

2. .zip格式
  • zip 压缩文件名 源文件
    #压缩文件
  • zip -r 压缩文件名 源目录
    #压缩目录
  • unzip 压缩文件
    #解压缩.zip文件
3. .gz格式
  • gzip 源文件
    #压缩为.gz格式的压缩文件,源文件会消失
  • gzip -c 源文件 > 压缩文件
    #压缩为.gz格式的压缩文件,源文件保留
    例如: gzip -c abc > abc.gz
  • gzip -r 目录
    #压缩目录下所有子文件,但不能压缩目录
  • gzip -d 压缩文件
    #解压缩文件
  • gunzip 压缩文件
    #解压缩文件
4. .bz2格式
  • bzip2 源文件
    #压缩为.bz2格式的压缩文件,源文件会消失
  • bzip2 -k 源文件
    #压缩为.bz2格式的压缩文件,源文件保留

注意:bzip2命令不能压缩目录

  • bzip2 -d 压缩文件
    #解压缩为,-k保留压缩文件
  • bunzip2 压缩文件
    #解压缩为,-k保留压缩文件
4. .tar.gz格式
  • tar -cvf 打包文件名 源文件
    • 选项:
      -c: 打包
      -v: 显示过程
      -f: 指定打包后的文件名
      
    例如:
    tar -cvf abc.tar abc
  • tar -xvf 打包文件名
    • 选项:
      -x: 解打包
      
    例如:
    tar -xvf abc.tar
  • tar -zcvf 压缩包名.tar.gz 源文件
    • 选项:
       -z: 压缩为.tar.gz格式
      
  • tar -zxvf 压缩包名.tar.gz
    • 选项:
        -x: 解压缩.tar.gz格式
      
5. .bz2格式
  • tar -jcvf 压缩包名.tar.bz2 源文件
    • 选项:
      -z: 压缩为.tar.bz2格式
      
  • tar -jxvf 压缩包名.tar.bz2
    • 选项:
       -x: 解压缩.tar.bz2格式
      

关机和重启命令

1.shutdown命令
  • shutdown [选项] 时间
    • 选项:
       -c:取消前一个关机命令
       -h:关机
       -r:重启
      
2.其他关机命令
  • half
  • poweroff
  • init 0
3.其他重启命令
  • reboot

  • init 6

    系统运行级别
    0 关机
    1 单用户
    2 不完全多用户,不含NFS服务
    3 完全多用户
    4 未分配
    5 图形界面
    6 重启

    cat /etc/inittab
    #修改系统默认运行级别
    id:3:initdefault
    
    runlevel
    #查询系统运行级别
    
5.退出登录命令
  • logout

挂载命令(分配盘符)

1.查询与自动挂载
  • mount
    #查询系统中已经挂载的设备
  • mount -a
    #依据配置文件/etc/fstab的内容,自动挂载
2.挂载命令格式
  • mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
    • 选项:
      -t文件系统:加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660等文件系统
      -o特殊选项:可以指定挂载的额外选项
      

特殊选项

3.挂载光盘
  • mkdir /mnt/cdrom/
    #建立挂载点(只要是空目录都可以)
  • mount -t iso9660 /dev/cdrom /mnt/cdrom/
    或mount /dev/sr0 /mnt/cdrom/

    #挂载光盘
4.卸载光盘(必须执行,不可省略)
  • umount 设备文件名或挂载点
    umount /mnt/cdrom
3.挂载U盘
  • fdisk -l
    #查看U盘设备文件名
  • mount -t vfat /dev/sdb1 /mnt/usb/
    #挂载U盘
    注意:Linux默认是不支持NTFS文件系统的

用户登录查看

  • w 用户名
    #查看用户登录信息
    在这里插入图片描述
  • who 用户名
    #查看用户登录信息
    在这里插入图片描述
  • last 在这里插入图片描述
  • lastlog
    在这里插入图片描述

三、Shell基础

Shell概述

1.什么是Shell在这里插入图片描述

在这里插入图片描述

2.Shell的分类

在这里插入图片描述


脚本执行方式

1.echo输出命令

  • echo [选项] [输出内容]
    • 选项:
      -e:支持反斜线控制的字符转换      
      

      在这里插入图片描述

2.第一个脚本

vi hello.sh
#!/bin/bash
#The first program

echo -e "\e[1;34m Hello World! \e[0m"

3.脚本执行

  • 赋予执行权限,直接运行
 chmod 755 hello.sh
./hello.sh   
  • 通过Bash调用执行脚本
bash hello.sh

Bash的基本功能

1.命令别名与快捷键

查看与设定别名
  • alias
    #查看系统中所有的命令别名
  • alias 别名 = ‘原命令’
    #设定命令别名
别名永久生效与删除别名
  • vi ~/.bashrc
    #写入环境变量配置文件(对每个用户单独生效)
  • unalias 别名
    #删除别名
  • 命令生效顺序在这里插入图片描述
常用快捷键

在这里插入图片描述

2.历史命令

  • history [选项] [历史命令保存文件]
    • 选项:
      -c:清空历史命令
      -w:把缓存的历史命令写入历史命令保存文件~/.bash_history
      

在这里插入图片描述

2.输出重定向

  • 标准输入输出
    在这里插入图片描述
  • 输出重定向(把本身应该显示在屏幕上的内容写到了文件里)
    在这里插入图片描述
    在这里插入图片描述

3.输入重定向(不从键盘输入,而把文件作为输入)

  • wc [选项] [文件名]
    • 选项:
      -c:统计字节数
      -w:统计单词数
      -l:统计行数
      
      在这里插入图片描述

3.管道符

多命令顺序执行

在这里插入图片描述

管道符
  • 命令1 | 命令2
    #命令1的正确输出作为命令2的操作对象
通配符

在这里插入图片描述

Bash中其他特殊符号

在这里插入图片描述

注:此笔记为学习慕课网Tony老师《Linux达人养成计划Ⅰ》所记。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值