命令解释器-Shell

目录

1. 概述

1.1. 概念

1.2. 分类:

1.3. type 命令

1.4.命令执行原理

2. Linux 中的特殊符号 

3. 命令别名

3.1. 查看设置的别名

3.2. 常用的别名

3.3. 删除别名

3.6. 注意(alias永久化):

4.  history 命令历史

例:


1. 概述

1.1. 概念

        shell:壳,命令解释器,负责解析用户输入的命令

命令解释器-Shell_第1张图片

硬件与内核直接还因有:驱动程序

        驱动程序:  是内核操控硬件的桥梁

内核主要做五件事:cup进程管理,内存存储空间管理,网络管理,硬盘的存储空间管理,外设管理

1.2. 分类:

        内置命令 (shell内置):shell为了完成自我管理和基本的管理,不同的shell内置不同的命令,但是大部分都 差不多

        外置命令:在文件系统的某个目录下,有个与命令名称相同的文件

1.3. type 命令

作用:

        查看命令类型:是内置命令、外置命名、alias命令

格式:     

            type   -参数     命令名

参数:

        type -a 列出当前命令可以如何执行

        type -t 仅列出命令按照哪种方式执行

 例:

命令解释器-Shell_第2张图片

1.4.命令执行原理

        系统为了让用户在命令行快速方便地执行命令,将可执行文件的路径存储在环境变量PATH中,使得shell知 道命令的可执行文件位置 PATH环境变量:当用户每次执行外部命令的时候都会去该变量所记录的路径下搜索和命令同名的二进制文 件,如果有则执行该二进制文件,如果没有则提示命令找不到。

        [root@server ~]# echo $PATH         /root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin

2. Linux 中的特殊符号 

命令解释器-Shell_第3张图片

3. 命令别名

作用

        别名:是命令的快捷方式,对于需要经常执行,并需要很长时间输入的长命令创建快捷方式很有用。         

格式

        alias         别名='原命令 - 参数'

3.1. 查看设置的别名

        [root@server /]# alias 

命令解释器-Shell_第4张图片

3.2. 常用的别名

untar='tar -zxvf '

         由于 tar 命令的参数太多不好记忆,所以将解压缩设为如下:

        alias untar='tar -zxvf '

wget='wget -c '(wget是下载文件的命令)

        下载大文件时的断点续连,防止网络异常中断:

        alias wget='wget -c '

getpass="openssl rand -base64 20"

        生成 20 个字符的随机数密码,使用 openssl 命令,但命令又很长不方便,可以设置别名:       

         alias getpass="openssl rand -base64 20"

ping='ping -c 5'

         ping url时会无限次输出,但其实没多大意义,可以使用 -c 命令将其限制为 5 次输出:

        alias ping='ping -c 5'

命令解释器-Shell_第5张图片

speed(测试网速命令

                 测试网速命令speedtest-cli ,为了方便使用可以设置别名:

下载pip: 安装: speedtest-cli是基于python编写的需要使用pip工具下载

                [root@server ~]# pip install speedtest-cli    (cli是客户端版)

此时代表pip安装成功

命令解释器-Shell_第6张图片

查看手册:

        利用help查看speedtest-cli命令所能使用的参数。

命令解释器-Shell_第7张图片

过滤中国地区的ISP列表

                [root@server ~]# speedtest-cli --list
命令解释器-Shell_第8张图片

--share分享,可以在网站查看生成的图片

        [root@server ~]#  speedtest-cli  --server   5530 --share

命令解释器-Shell_第9张图片

复制http://www.speedtest.net/result/15341342242.png在浏览器中打开,就会获得你此时的网速情况。

命令解释器-Shell_第10张图片

简要查看网速情况:

        [root@server ~]# speedtest-cli --server 5530 --simple

命令解释器-Shell_第11张图片

设置别名:需要更换id

[root@server ~]# alias speed="speedtest-cli --server 5530 --simple"

命令解释器-Shell_第12张图片

测试:

命令解释器-Shell_第13张图片

ipe:公网 IP别名设置

        查看电脑主机的公网IP:[root@server ~]# curl ipinfo.io/ip

[root@server ~]# alias ipe="curl ipinfo.io/ip"

 c 清屏

        一般使用 ctrl + l 快捷键,也可以将 clear 命令定义得更短,这样使用起来更直接,更粗暴。

        [root@server ~]# alias c="clear"

3.3. 删除别名

       格式:unalias    别名

例:

        [root@server ~]# unalias ping

3.6. 注意(alias永久化):

        在命令行中使用alias命令设置的别名仅在该次登入有效,如果重新开启一个 Shell,或者重新登录系统,则 这些alias将无法使用。

        在linux中提供alias永久化的方法:

        将别名命令写入到~/.bashrc/etc/bashrc文件中

        执行 source ~/.bashrc 和 source ~/etc/bashrc 生效

将别名命令写入到~/.bashrc

     [root@server ~]#  vim /root/.bashrc

进如后输入在文本模式下输入: alias hello="'hello,evertone' > /file2"保存并退出

此时该别名还未生效,因此执行以下命令将其生效:

        [root@server ~]# source   /root/.bashrc 

此时在root用户下该别名完成永久化!

若想要在全局使该别名完成永久化,则需要执行一下操作

将别名命令写入到/etc/bashrc

        root@server ~]# vim /etc/bashrc 

命令解释器-Shell_第14张图片

此时该别名还未生效,因此执行以下命令将其生效:

[root@server ~]# source   /etc/bashrc 

命令解释器-Shell_第15张图片

此时该别名完成全局永久化!

4.  history 命令历史

4.1. 作用

        history命令可以查阅命令历史记录

4.2. 格式

        history      -参数

4.3. 参数

        number:显示最近number条命令历史

        -c:清空当前历史命令

4.4. 设置history记录命令条数

        [root@server ~]# vim /etc/profile

                # 定位:HISTSIZE=1000

                 #退出后重启:reboot

例:

[root@server ~]# history 5   # 查看最近使用的5条命令。

        13 vim ~/.bashrc

        14 ping www.baidu.com

        15 source ~/.bashrc

        16 ping www.baidu.com

        17 history 5

[root@server ~]# !16                    # 将第16命令在执行一遍

命令解释器-Shell_第16张图片

你可能感兴趣的:(linux,运维,服务器)