linux基础1

123 阅读9分钟

linux学习之路

1.命令的终端格式

command [-options] [parameter]

说明:

  • command : 命令名, 相应功能的英文单词或单词的缩写
  • [-options] : 选项, 可用来对命令进行控制, 也可以省略
  • parameter : 传给命令的参数, 可以是 零个、一个 或者 多个

2. 常用Linux命令的基本使用

序号 命令 对应英文 作用
01 ls list 查看当前目录下的内容
02 pwd print working derectory 查看当前所在文件夹
03 cd [目录名] change directory 切换文件夹
04 touch [文件名] touch 如果文件不存在, 新建文件
05 mkdir [目录名] make directory 创建目录
06 rm [文件名] remove 删除指定的文件名
07 clear clear 清屏

3.查阅命令帮助信息

  1. --help 帮助信息

    command --help
    

    说明:显示command命令的帮助信息

    缺点: 虽然可以查询命令的帮助信息, 但是没有提供 翻页、搜索功能.

  2. man 手册

    man command
    

    说明:查询command命令的使用手册

    man是manual的缩写,是Linux提供的一个手册, 包含了绝大部分的命令、函数的详细使用说明.

    man的常用操作键:

    操作键 功能
    空格键 显示手册的下一屏
    Enter键 一次滚动首页也得一行
    b 回滚一屏
    f 前滚一屏
    q 退出
    /word 搜索word字符串

4.常用文件和目录命令

  • 查看目录内容
    • ls
  • 切换目录
    • cd
  • 创建和删除操作
    • touch 创建文件
    • rm 删除文件
    • mkdir 创建目录
  • 拷贝和移动文件
    • cp
    • mv
  • 查看文件内容
    • cat
    • less
    • grep
  • 其他
    • echo
    • 重定向>>>
    • 管道|

1.终端使用技巧

  1. 自动补全

    tab键

  2. 曾经使用过的命令

    • 使用上下键。
    • 退出选择ctrl+c

2.ls命令

  1. ls命令说明

    ls是英文单词list的简写,功能为列出目录的内容,是用户常用的命令

  2. linux下文件和目录的特点

    • linux文件或者目录名称最长可以256个字符
    • .开头的文件为隐藏文件,需要用参数 -a 才能显示出来
    • .代表当前目录
    • ..代表上一级目录
  3. ls常用选项

    选项 含义
    -a 显示指定目录下所有子目录与文件, 包含隐藏文件
    -l 以列表方式显示文件的详细信息
    -h 配合 -l 以人性化的方式显示文件大小
  4. ls和通配符的使用

    通配符 含义
    * 代表 任意个数 的字符
    ? 代表任意一个字符, 且只能是一个
    [abc] 匹配a、b、c中任意一个
    [a-f] 匹配从a到f范围内的任意一个字符
  5. 科普:计算机中文件大小的表示方式

    单温 英文 含义
    字节 B(byte) 在计算机中作为一个数字单元,一般为8位二进制数
    K(Kibibyte) 1KB = 1024 B, 千字节( 1024 = 2的10次方)
    M(Mebibyte) 1MB = 1024 KB, 百万字节
    千兆 G(Gigabytee) 1GB = 1024 MB, 十亿字节, 千兆字节
    T(Terabyte) 1 TB = 1024 GB, 万亿字节, 太字节
    P(Petabyte) 1 PB = 1024 PB, 百万亿字节, 拍字节

3.切换目录

  1. cd

    cd 是英文单词 change directory 的缩写, 其功能为 更改当前的工作目录, 也是用户最常用的命令之一

    注意: linux的所有 目录文件名 都是大小写敏感的

    命令 含义
    cd 目录 切换到指定目录下
    cd .. 切换到上级目录
    cd - 可以在最近的两次目录之间切换
  2. 相对路径和绝对路径

    1. 相对路径

      特征: 相对路径 输入路径时, 最前面不是以 "/" 开始的, 表示相对 当前目录 所在的位置

      缺点: 参照工作目录 发生变化 相对路径也要发生变化

    2. 绝对路径

      特征: 绝对路径 在输入路径时, 最前面是以 / 开始的, 表示 从 根目录 开始的具体目录位置

      优点: 定位准确, 不会因为 工作目录变化 而变化

4.创建和删除操作

  1. touch 创建文件

    touch 1.txt
    

    注意:创建的是一个空的文件,如果需要添加内容可以使用vim/vi命令打开文件之后在添加内容

  2. mkdir 创建目录

    mkdir file
    

    参数:-p 创建 有层级关系 的目录

    mkdir file1/file2/file3
    

    注意:新建目录的名称不能与当前目录中已有的名称相同

  3. rm 删除

    rm a.txt
    

    注意:

    • rm只能删除文件,不能删除文件夹

    • 如果不使用参数-f则会有提示:rm:是否删除普通空文件 "1.txt"?,此时可以输入字母y,然后回车确认删除操作

    参数-f

    参数 英文 含义
    -f force (强制) 强制删除,忽略不存在的文件, 无需提示

    删除目录

    rm -rf 目录
    

    参数:-r

    参数 英文 含义
    -r recursive (递归) 递归地删除目录下的内容, 删除文件夹 时必须加此参数

    结合通配符*

    rm -rm *.txt
    
    

    含义:删除当前目录下所有以.txt结尾的文件

    注意:使用rm命令删除的文件无法恢复,切记小心

5.拷贝和移动文件

序号 命令 对应英文 作用
01 tree [目录名] tree 以树状图 列出目录中的内容
02 cp 源文件 目标文件 copy 复制文件或者目录
03 mv 源文件 目标文件 move 移动文件或目录 或者 重命名
  1. 扩展 tree

    概念:以树状图 列出目录中的内容

    默认没有安装 tree 组件, 需要联网时安装:

    # 安装 tree组件
    yum -y install tree
    
    # 卸载 tree组件
    yum -y remove tree
    
    
    • 用法:

      tree [目录]

      • 如果指定目录, 就显示指定目录的内容
      • 如果不指定目录,就显示当前目录的内容

      参数 -d

      选项 英文 含义
      -d derictory (目录) 只显示目录, 不显示文件

      参数-L

      eg:tree -L n [目录]

      n为需要显示多少层的目录

      选项 英文 含义
      -L level (层级) 显示几层目录

6. cp 复制文件/目录

  1. 备份文件

    cp 文件 备份文件名
    
    
  2. 复制文件到指定目录

    cp 文件 目录/
    
    

    目录可以是绝对路径也可以是相对路径

  3. 复制目录到指定目录

    cp -r 目录1/ 目录2/
    
    
    命令 英文 作用
    -r recursive (递归) 递归复制目标目录的内容

7.mv 移动文件/目录

  1. 将文件移动到另一个目录中

    mv 文件 目录/
    
    
  2. 重命名

    mv 旧文件名 新文件名
    
    

    解释:相当于把文件覆盖重写了

  3. 移动目录

    mv 被移动的目录 目标目录/
    
    

5.查看文件内容

序号 命令 对应英文 作用
01 cat 文件名 concatenate 查看小文件内容
02 less -N 文件名 less 分频 显示大文件内容
03 head -n 文件名 查看文件的前一部分
04 tail -n 文件名 查看文件的最后部分
05 grep 搜索文本 文件名 grep 根据关键词, 搜索文本文件内容
  1. cat 查看小文件的内容

    cat 文件名
    
    

    参数-n

    参数 英文 含义
    -n number 显示行号

    缺点:空行也显示行号

    参数-b

    参数 英文 含义
    -b number-nonblank 非空行 显示行号
  2. less 分屏显示文件内容,每次只显示一页内容

    特性:适合查看内容较多的文本文件

    参数-N

    参数 英文 含义
    -N number 显示文件内容 且 显示行号

    less常用操作:

    操作键 功能
    空格键 显示手册页的下一屏幕
    Enter 键 一次滚动手册页的一行
    b 回滚一屏
    f 向前一屏
    q 退出
    /word 搜索word字符串

    搜索关键字 /word

    用法:/搜索的内容

    操作键 功能
    n 向下找
    N 向上找
  3. head 查看文档前几行内容

    参数 -n

    参数 英文 含义
    -n number 表示显示前几行内容
    head -n 数字 文件
    
    
  4. tail查看文档后几行内容

    eg:查看文档后10行内容

    tail -10 文件
    
    

    动态显示文档最后内容,一般用于查看日志

    tail -f 文件名
    
    

    动态显示文档最后100行内容

    tail 100f 文件名
    
    
  5. grep 搜索存在关键字的行

    grep 关键字 文件名
    
    

    参数 -n

    选项 英文 含义
    -n number 显示匹配行和行号
    grep -n 关键字 文件名
    
    

    忽略大小写,搜索关键字

    参数-i

    选项 英文 含义
    -i ignore-case 忽略大小写
    grep -i 关键字 文件名
    
    

    搜索不存在关键字的行

    参数:-v

    选项 英文 含义
    -v invert-match 显示 不包含关键字 的所有行
    grep -v 关键字 文件名
    
    

    搜索以关键字开始的行或者以关键字结尾的行

    参数:

    参数 含义
    ^a 行首,搜索以a开头的行
    ke$ 行尾,搜索以ke结束的行
    grep 正则 文件名
    
    

6. 管道

概念:通过 命令1 | 命令2 可以将命令1的结果 通过 命令2 作进一步的处理

案例1:过滤/etc目录下以pro开头的文件

ls /etc	| grep ^pro

案例2:搜索存在关键字的行数

ls /etc | grep ^pro |  wc -l

参数:

英文 作用
命令: wc [参数] [文件] 打印文件的行数, 单词数, 字节数
参数: -l line 行 显示 行数

7.echo 文字内容

概念:echo string 将字符串输出到控制台,通常会和重定向配合使用

注意:如果字符串有空格, 为了避免歧义 请增加 双引号 或者 单引号

[root@linux a]# echo hello
hello

8.重定向 >>>

echo 2 > a.txt

参数:

命令 作用
结果 > 文件名 > 表示输出, 会覆盖文件的原有内容
命令 >> 文件名 >> 表示追加, 会将内容追加到已有文件的末尾

将命令失败的结果追加到指定文件后面

cat 不存在的目录  &>>  error.log

命令 作用
命令 &>> 文件 &>> 表示不区分错误类型 通通放到 日志中

9. && 和 ||

案例1:如果 创建 目录 成功, 就提示 创建成功

命令 作用
命令1 && 命令2 如果 命令1执行成功了, 才执行 命令2
mkdir -p 正确目录 && echo "提示创建目录成功"

案例2:如果 创建 目录 失败, 就提示 创建失败

命令 作用
命令1 || 命令2 如果 命令1 执行失败了, 才执行 命令2
mkdir 错误目录 || echo "提示创建目录失败"

10. 软链接

概念:在linux中文件名和内容是两个分开的文件

需求:因为 某些文件和目录 的 路径很深, 所以 需要增加 软链接(快捷方式)

实现:

命令 英文 作用
ln -s 目标文件绝对路径 快捷方式路径 link 给目标文件增加一个软链接, 通俗讲就是快捷方式

注意: 必须 增加 -s , 否则 就变成了 硬链接(了解)