命令解释器-Shell

news2025/1/21 15:40:52

目录

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:壳,命令解释器,负责解析用户输入的命令

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

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

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

1.2. 分类:

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

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

1.3. type 命令

作用:

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

格式:     

            type   -参数     命令名

参数:

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

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

 例:

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 中的特殊符号 

3. 命令别名

作用

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

格式

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

3.1. 查看设置的别名

        [root@server /]# alias 

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'

speed(测试网速命令

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

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

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

此时代表pip安装成功

查看手册:

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

过滤中国地区的ISP列表

                [root@server ~]# speedtest-cli --list

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

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

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

简要查看网速情况:

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

设置别名:需要更换id

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

测试:

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 

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

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

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

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命令在执行一遍

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1063958.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

已解决:win的资源管理器右键菜单被折叠无法显示全内容?教你解决

win11在样式上整挺好的,那种圆润感是win10没法比拟的,但是有一个很严重的诟病,就是右键菜单的折叠,这个东西是资源管理器新增的一个功能,如果之前是win右键的重度用户,那么对于这种需要多点一步展开的操作&…

解决报错: require is not defined in ES module scope

用node启动mjs文件报错:require is not defined in ES module scope 现象如下: 原因: 文件后缀是mjs, 被识别为es模块,但是node默认是commonjs格式,不支持也不能识别es模块。 解决办法:把文件后缀从.mjs改…

【进阶C语言】排序函数(qsort)与模拟实现(回调函数的实例)

本章大致内容目录: 1.认识回调函数 2.排序函数qsort 3.模拟实现qsort 回调函数为C语言重要知识点,以函数指针为主要知识;下面介绍回调函数的定义、回调函数的库函数举例即库函数模拟实现。 一、回调函数 1.回调函数定义 回调函数就是一…

16哈希表-基础操作

目录 哈希表 散列思想 哈希表的实现 简单示例 开胃菜:LeetCode之路——242. 有效的字母异位词 分析 哈希表 英文名字为Hash table,散列表的英文叫“Hash Table”,我们平时也叫它“哈希表”或者“Hash表”。 哈希表(Hash Ta…

vue3中使用return语句返回this.$emit(),在同一行不执行,换行后才执行,好奇怪!

今天练习TodoList任务列表案例,该案例效果如图所示: 此案例除了根组件App.vue,还有TodoList、TodoInput、TodoButton三个子组件。 因为有视频讲解,在制作TodoList、TodoInput时很顺利,只是在完成TodoButton这个组件时出了点问题…

VR开发(一)——SteamVR实现摇杆移动

一、基础环境搭建 1.AssetStore 找到SteamVR并导入; 2.添加一个 VR 中代表玩家自己的物体。我可以打开 Assets/SteamVR/InteractionSystem/Core 文件夹,将 Player 物体拖入场景: 二、修改手柄按钮映射集 3.windows/steamVR input&#xff…

【程序员必看】计算机网络,快速了解网络层次、常用协议和物理设备!

文章目录 0 引言1 基础知识的定义1.1 计算机网络层次1.2 网络供应商 ISP1.3 猫、路由器、交换机1.4 IP协议1.5 TCP、UDP协议1.6 HTTP、HTTPS、FTP协议1.7 Web、Web浏览器、Web服务器1.8 以太网和WLAN1.9 Socket (网络套接字) 2 总结 0 引言 在学习的过程…

OpenResty编译安装详解

文章目录 一、概述1、OpenResty是什么2、官方文档 二、cengos安装OpenResty1、从官网下载2、目录结构3、编译安装 一、概述 1、OpenResty是什么 OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖…

【Word】公式编辑器中连字符/减号等显示偏长/过长

问题 当公式编辑器中出现连字符的时候,连字符显示偏长,如下图所示: 方法 在连字符的前后加上双引号后即可解决连字符显示偏长的问题。 最终效果对比如下: 结语 Word的公式编辑器中,双引号内部的内容被当做普通…

基于FastAPI的文件上传和下载

基于FastAPI的文件上传和下载 一、前言 为了实现ASR的可视化界面,在各个博客中寻觅了一波找找文件上传和下载的例子,没有找到能完整实现这个功能的,有也只是有一部分(菜菜求捞捞),看了甚是烦恼&#xff0…

DBC配置SecOC属性

关联文章:Autosar基础——车载信息安全SecOC 属性定义的规范详细介绍请参考 ①dbc属性定义 ②Vector DBC属性定义规则 文章目录 一、SecOC简介二、DBC文件中的SecOC属性三、配置SecOC属性设置SecOC的属性设置同步报文的属性设置同步请求报文的属性一、SecOC简介 在车载网络中…

怎么利用互联网赚钱,网上赚钱的7种方法

互联网的兴起改变了我们的生活方式,不仅让我们的世界更为便捷,也为我们提供了赚钱的机会。越来越多的人开始通过互联网实现财富梦想。你是否曾想过,如何利用互联网来赚钱呢?今天,我将为大家分享七种赚钱方法&#xff0…

数据分析篇-数据认知分析

一简介 数据认知分析,实际是对数据的整体结构和分布特征进行分析,是对整个数据外在的认识,也是数据分析的第一步。对于数据认知的分析,一般会考虑分散性、位置特性、变量的相关性等,一般会考虑平均数、方差、极差、峰…

算法通过村第十二关-字符串|白银笔记|经典面试题

文章目录 前言1. 反转问题1.1 反转字符串1.2 k个一组反转1.3 仅仅反转字母1.3.1 采用栈实现操作1.3.2 采用双指针实现操作 1.4 反转字符串里面的单词1.4.1 使用语言提供的方法来解决(内置API)1.4.2 如何优雅自己实现上述功能 2. 验证回文串3. 字符串中的第一个唯一字符4. 判断是…

SaaS 电商设计 (二) 全链路解决方案概述和核心业务流程梳理

一.业务目标&技术目标 业务目标:完成多业态,多渠道的数字化运营 自有业务: O2O,B2C,B2B2C,S2B2b 平台业务:POPB2c,POPB2b,POPS2B2b 1.1 自有业务 O2O:全称Online to Offline.泛指的线上线下的业务融合.这种的情况分为两种情况,第一种通过线上的数字化运营引导线上用户线下…

oCPC实践录 | oCPC转化的设计、选择、归因与成本设置(4)

读者们,中秋十一快乐,一篇文章奉上。 在上篇oCPC实践录 | oCPC转化的设计、选择、归因与成本设置(3)文章中我们主要讨论:怎么定义高价值用户,回传高价值用户不一定利益最大化,回传高ROI用户逻辑…

速度轴模拟量控制FB(博途SCL+三菱ST代码)

利用模拟量实现变频器的正反转直接控制具体方法,请参考下面文章链接: 模拟量0-10V信号控制变频器实现正反转速度随动_RXXW_Dor的博客-CSDN博客比例随动专栏有系列文章介绍,大家可以查看相关文章,链接如下:绕线机-排线伺服比例随动功能块(梯形图+SCL代码)_RXXW_Dor的博客…

自己实现扫描全盘文件的函数。

1.自己实现扫描全盘的函数 def scan_disk(dir): global count,dir_count if os.path.isdir(dir): files os.listdir(dir) for file in files: print(file) dir_count 1 if os.path.isdir(dir os.sep file): …

MATLAB:线性系统的建模与仿真(含完整程序)

目录 前言实验内容一、先看作业题目要求二、作业正文Modeling LTI systemsEstablish model1.tf(sys2)2. tf(sys3)3.zpk(sys1)4. zpk(sys3)5. ss(sys1)6. ss(sys2)7.[num,den] tfdata(sys1)8.[num,den] tfdata(sys2)9.[num,den] tfdata(sys3)10.[num,den] tfdata(sys1,’v’…