默认教学计划
931人加入学习
(20人评价)
Linux运维基础
价格 ¥ 599.00
该课程属于 高校公益行 | 网络安全实践训练营 请加入后再学习
Shell: 在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。
 
shell广义上分为两类:
  GUI:包括GNOME  KDE XFACE等
  CLI:sh csh ksh bash等(Linux发行版本中,bash是默认使用的shell程序)
  
shell启动:当用户登录完成后,系统会自动启动shell程序
    root  student用户
    shell:父shell程序和子shell程序(父子shell之间设置环境互相独立)
    cat /etc/shells //查看当前系统所支持的shell程序
    exit  //退出当前shell程序
 
bash的特性:
  1:命令历史:Linux会自动记录系统过去执行的命令,并保存在内存的缓冲区中
     在每个用户的家目录下,有个隐藏文件.bash_history保存命令历史
     history //查看linux的历史
        -c:清空命令历史
        -d:删除某一条命令历史
        -w:将命令历史保存到某个文件中
 
       HISTSIZE:命令历史大小变量
        $ echo $HISTSIZE    //查看HISTSIZE变量的值,默认的命令历史是1000条
      命令历史使用技巧:
        !n:执行命令历史中的第n条命令(n是命令历史编号)
        !-n:执行命令历史中的倒数第n条命令(n是命令历史编号)
        !word:执行命令历史中最近一次以word开始的命令(word必须能够唯一的标识用户想执行的命令)
        !!:执行上一条命令
        command !$:引用一个命令的最后一次参数
        command ESC键(按完松开) 再按.键:引用一个命令的最后一次参数
 
 (alias定义的别名只在当前shell生效)
    # alias new_command =OLD_COMMAND    //只执行alias命令,列出系统中所有的命令别名
       注意:执行alias命令时,COMMAND最好用引号引起来,因为别名可以等于原命令加选项
    # unalias new_command  //取消命令别名
 
    2:管道,IO重定向
     计算机体系结构::CPU、RAM、输入设备(Input)、输出设备(Output)
     计算机总线:
       地址总线:负责内存寻址
       数据总线:负责传输数据
       控制总线:负责控制指令
     寄存器:CPU中内部临时存储空间
    
     I/O设备:负责计算机内部存储设备和外部存储设备(如硬盘,光盘,U盘等)进行交互的设备
    
     程序:指令+数据
       指令:有程序提供,负责加工数据
       数据:系统中数据可以有多种来源,比如来自变量,来自文件,来自输入设备等
       
     标准输入输出设备:
        标准输入设备:键盘(stdin),文件描述符为0
        标准输出设备:显示器(stdout),文件描述符为1
        标准错误输出设备:显示器(stderr),文件描述符为2
     三种数据流:
        标准输入数据流/标准输出数据流/标准错误输出数据流
        
    文件描述符:当在Liunx中打开一个文件时,内核会反复调用,对于文件标识就很重要了,用文件描述符来标识文件,文件加载完成用数字标识,fd:file descriptor(文件描述符)
    
    IO重定向:把默认输入输出数据来源,重新定向到其他的文件或设备
       输出重定向:
         >:覆盖输出重定向
         >>:追加输出重定向
         2>:错误覆盖输出重定向
         2>>:错误追加输出重定向
         &>:混合覆盖输出重定向
         &>>:混合追加输出重定向
       输入重定向:
         <:输入重定向
       
    管道:连接多条命令,把前一条命令的输出结果作为后一条命令的输入条件(组合小程序,实现大功能)
       command1 | command2 | commad3 ....
 
    tr:实现字符转换,不修改源文件,语法:tr [OPTION]... SET1 [SET2]
    tee:read from standard input and write to standard output and files
 
4:命令行编辑
    ctrl+a:光标快速跳转到命令行的行首
    ctrl+e:光标快速跳转到命令行的行尾
    ctrl+u:快速删除从光标位置到命令行行首的字符串
    ctrl+k:快速删除从光标位置到命令行行尾的字符串
    ctrl+l:清屏(命令clear:清屏)
 
5:命令行补齐
    5.1:命令补齐:在PATH变量搜索命令并补齐(PATH变量必须正常;tab键补齐)
        按tab键两次,列出以某个字符开始的所有的命令
        路径和文件补齐:在系统路径中查找
        命令行补齐功能不能补齐选项
    5.2:命令替换(经常用到shell脚本编程中) $(command)或者 `command`(两边是反撇号)
    命令替换就是把命令中的子命令替换成子命令执行结果的过程
     # echo "字符串"
     ""(双引号):弱引用(可是实现变量的替换,把变量名替换为变量值)
     ``(反撇号):命令引用
     ''(单引号):强引用(不能完成变量替换)
 
6:命令行通配:globbing(正则表达式)
     *:匹配任意长度的任意字符
     ?:匹配任意单个字符
     []:匹配指定范围内的任意单个字符
       [ab] [a-m] [a-z] [A-Z] [a-zA-Z] [0-9] [a-zA-Z0-9]
     [^]:匹配指定范围外的任意单个字符
       [^a-z] [^0-9]
    
     [:space:]:表示空格
     [:punct:]:表示所有标点符号
     [:lower:]:表示所有小写字母
     [:upper:]:表示所有大写字母
     [:alpha:]:表示所有字母(包括大小写)
     [:digit:]:表示所有数字
     [:alnum:]:表示所有数字和大小写字母
[展开全文]

## 管道,IO重定向。

 

### 计算机体系结构:

 * 控制器:CPU,读取系统指令。

 * 运算器:CPU,运算。

* 存储器:RAM,(内部存储器:易失性存储器)

* 输入、输出设备。

 

 

### 计算机总线:

* 地址总线:负责内存寻址。

* 数据总线:负责创术数据。

* 控制总线:负责控制指令。

* 寄存器:CPU中内部临时存储空间。

* I/O设备:股则计算机内部存储设备和外部存储设备进行交互的设备。

 

 

 

 * 程序:指令+数据

 * 指令:由程序提供,负责加工数据。

 * 数据:系统中的数据可以有多种来源,比如来自自变量,来自文件,来及输入设备等。

 

 

* 标准输入设备:键盘(srdin),文件描述符0。

* 标准输出设备:显示器(stdout),文件描述符1。

* 标准错误输出设备:显示器(stdout),文件描述符2.

 

### 三种数据流:

* 标准输入数据流/标准能输出数据流/标准寻物输出数据流。

 

* 当在LInux中打开一个文件时,内核会反复调用,对于文件表示就很重要了,用文件描述符来表示文件,文件加载王成用数字标识。

 

 

### IO重定向

* 输出重定向:

 * >:覆盖输出重定向。

 * >>:追加输出重定向。

 * 2>:错误覆盖输出重定向。

 * 2>>:错误追加输出重定向。

 * &>:混合覆盖输出重定向。

 * &>:混合追加输出重定向。

 

 

* 输入重定向:

 * < :输入冲低昂想

 

* 管道:连接多条命令,把前一条命令的输出结果作为后一条命令的输入条件。

 * tr:实现字符转换,不修改源文件。

 * tee:

[展开全文]

管道、重定向
标准输入设备:键盘(stdin)文件描述为0 输出设备:显示器(stdout)文件描述为1 错误输出设备:显示器(stderr)文件描述为2
IO重定向:把默认输入输出的数据来源重新定向到其他文件或设备
输出重定向:
>:覆盖输出重定向
>>:追加输出重定向
2>:错误覆盖输出重定向
2>>:错误追加输出重定向
&>:混合覆盖输出重定向
&>>;混合追加输出重定向
输出重定向:
<:输入重定向
管道:连接多条命令。前一条命令输出结果作为后一条命令的输入条件
command 1 | command 2 | command 3

[展开全文]

shell:

GUI  包括GNOME KDE XFACE

CLI   sh csh ksh bash(bash是默认的shell程序)

用户登录完成后,系统自动启动shell程序

进程 应用程序的副本,使用PID区分(在系统中,一个进程只认为自己存在)

shell 父shell程序,子shell程序(父子shell之间设置环境互相独立)

cat /etc/shells 查看当前系统支持的shell程序

yum -y install ksh csh 安装 ksh  csh 

exit 退出当前shell程序 

 

bash的特性

    1,命令历史:Linux自动记录系统执行的命令,保存在内存的缓存区中。每个用户的家目录下,有个隐藏的文件 .bash_history保存命令历史。

        history 查看命令历史

        -c 清空命令历史

        -d 删除某一条命令位置

        -w 将命令历史保存到某个文件中

        HISTSIZE 命令历史大小变量

        echo $HISTSIZE 查看其值

    !n  执行历史中第n条命令

   !-n 倒数第n条命令

   !Word 执行命令历史中最近一次以Word开始的命令(Word必须唯一标识要执行的命令)

   !!执行上一次命令

   !$ 引用一个命令的最后一次参数

    ESC键 再按 .   同上

 

    2,管道,IO重定向

    标准输入设备 键盘(stdin)文件描述符 0

    标准输出设备 显示器(stdout)文件描述符 1

    标准错误输出设备 显示器(stderr)文件描述符 2

    当用户没有为指令指定数据来源时,系统要有默认的数据来源

    三种数据流 : 标准输入/出数据流 标准错误输出数据流

     Linux打开文件时,内核会反复调用,对文件进行标识,用文件描述符来标识文件,文件加载完成后用数字标识。

    fd :file description(文件描述符)

IO重定向 把默认输入出数据来源,重新定向到其他的文件或设备 

 

    输出重定向——

        > 覆盖输出重定向

       >> 追加 重定向

       2> 错误覆盖输出重定向 

       2>> 错误追加 重定向

       &> 混合覆盖输出重定向

       &>>混合追加重定向

 

     输出重定向——

         < 输入重定向

 

     管道:连接多条命令,把前一条命令的输出结果作为后一条命令的输入条件(组合小程序,实现大功能)

tr 实现字符转换,不修改源文件   tr 'a-z' 'A-Z'

 cat /etc/login | tr 'a-z' 'A-Z'  输出结果为大写

tee  读取标准输入的数据,并将其内容输出成文件

 

    3,命令别名 

        alias command=COMMAND(原来的命令,最好用‘’引起来) 只执行alias时,会列出系统中所有已经有别名的命令。

        unalias 取消

    4,命令行编辑

        Ctrl + a 快速跳到命令行首

        Ctrl + e 快速跳转到行尾

        Ctrl + u 快速删除光标位置到命令行行首的字符

        Ctrl + k 快速删除光标位置到命令行行尾的字符

        Ctrl + l 清屏

 

    5,命令行展开

        命令补齐: 在PATH变量搜索命令并补齐(PATH命令必须正常;tab键补齐)

        路径和文件补齐 :在系统路径中查找

        命令行补齐功能 不能补齐选项

        命令替换:经常用在shell脚本编程中

            将命令当中的子命令 替换成子命令执行结果 的过程

---> $(command)    'command'(反撇号)

双引号"",弱引用(可实现变量的替换,把变量名替换为变量值)  

反撇号``,命令引用

单引号‘’强引用(不能完成变量替换)

 

    6,命令行通配

* 匹配任意长度的任意字符

? 匹配任意单个字符

[ ] 匹配制定范围内的任意单个字符

--->> [ab] [a-m] [a-zA-Z] [a-zA-Z0-9]

[^] 匹配任意制定范围外的任意单个字符

--->>[^a-z]

[:space:] 表示空格

[:punct:] 所有标点符号

[:lower:] 所有小写字母

[:upper:] 所有大写字母

[:alpha:] 所有字母

[:digit:] 所有数字

[:alnum:] 所有数字和字母

 

    7,变量

 

    8,编程

 

 

 

 

 

 

 

 

 

 

 

[展开全文]

管道,IO重定向

计算机体系结构:

控制器:CPU,读取系统指令

运算器:CPU,运算

存储器:RAM(内部存储器:易失性存储器)

输入设备:输入数据,如键盘,硬盘等

输出设备:显示指令执行结果的设备,比如显示器音响,硬盘等。

计算机总线:

地址总线:负责内存寻址

数据总线:负责传输数据

控制总线:负责控制指令

寄存器:CPU中内部临时存储空间

I/O设备:负责计算机内部存储设备和外部存储设备(如硬盘,光盘,U盘等)进行交互的设备

程序:指令+数据

指令:由程序提供,负责加工数据

数据:系统中数据可以有多种来源,比如来自变量,来自文件,来自输入设备

当用户没有为指令指定数据来源时,系统要有默认的数据来源

标准输入输出设备:键盘文件描述符为0,显示器文件描述符为1

标准错误输出设备:显示器文件描述符为2

三种数据流

标准输入数据流/标准输出数据流/标准错误输出数据流

当在linux中打开一个文件时。内核会反复调用,对于文件的标识就很重要了,用文件描述符来标识文件,文件加载完成用数字标识

fdfile descriptor(文件描述等)

IO重定向:把默认输入输出数据来源,重新定向到其他的文件和设备

输出重定向:

>:覆盖输出重定向

>>:追加输出重定向

2>:错误覆盖输出重定向

2>>:错误追加输出重定向

&>:混合覆盖输出重定向

&>>:混合追加输出重定向

输入重定向:

<:输入重定向

管道:连接多条命令,把前一条命令的输出结果作为后一条命令是输入条件(组合小程序,完成实现大功能)

commd1  |  command2  |  commad3 ....

tr:实现字符转换,不会修改源文件

 

[展开全文]

授课教师

课程特色

视频(102)
下载资料(1)