Linux 操作基础——shell

1.什么是shell

shell 是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器),shell 接收用户输入的命令并把它送入内核执行,在用户与操作系统之间进行交互。shellLinux系统中具有极其重要的地位。

2.shell的功能

命令解释器是shell最重要的功能。Linux系统中的所有可执行文件都可以作为shell命令来执行。Linux系统上可执行文件的分类如下:

类 别 说明
Linux命令 存放在/bin、/sbin目录下的命令
内置命令 出于效率的考虑,将一些常用命令的解释程序构造shell内部
实用程序 存放在/user/bin、/user/sbin、/userlocal/bin、/usr/local/sbin等目录下的实用程序
用户程序 用户程序经过编译生成可执行文件后可作为shell命令运行
shell脚本 由shell语言编写的批处理文件

shell完成命令解释流程图

shell还具有如下功能能

  • 通配符、命令补全、别名机制、历史命令。
  • 重定向、管道、命令替代、shell编程等。

3.shell的主要版本

版 本 说 明
Bourne Again Shell(bash、bsh的扩展) bash是大多数Linux系统的默认shell。bash和bsh完全向后兼容,并且在bsh的基础上增加和增强了很多的特性。bash也包含了很多C shell 和korn shell中的优点。bash 有很灵活和强大的编程接口,同时又有很友好的用户界面
korn shell(ksh) Korn Shell(ksh)由Dava Korn所写,是Unix系统上的标准shell。另外,在Linux环境下有一个专门为Linux系统编写korn shell的扩展版本,即Public Domain Korn Shell(pdksh)
tcsh(csh扩展) tcsh是C shell的扩展。tcsh与csh完全向后兼容,但它包含了更多的用户感觉方便的新特性,其最大的提高是在命令行编辑和历史浏览方面

4.shell的元字符

在shell中有一些具有特殊意义,称为shell元字符(shell Metacharacters)。若不以特殊方式指明,shell并不会把他们当作普通字节符使用。
常用的shell元字符及含义

元字符 含 义
* 代表任意字符串
代表任意字符
/ 代表根目录或作为路径间隔符使用
| 转义字符。当命令的参数要用到到保留字时,要在保留字前面加上转义字符
\<Enter> 续行符。可以使用续行符将一个命令行分写在多行上
$ 变量值置换,如$PATH表示环境变量PATH的值
在‘…'中间的字符均被当作文字处理,指令、文件名、保留字等都不具有原来的意义
" 在"…"中间的字符会被当作文字处理并允许变量值置换
` 命令替换,置换`…`中命令的执行结果
< 输入重定向字符
> 输出重定向字符
| 管道字符
& 后台执行字符。在一个命令之后加上字符’&',该命令就会以后台方式执行
分隔顺序执行的多个命令
() 在子shell中执行的一组命令
{} 在当前shell中执行一组命令
执行命令历史记录中的命令
~ 代表登录用户的宿主目录(自家目录)

5.通配符的使用

通配符 说 明
* 匹配任何字符和任何数目的字符
匹配任何单字符
[…] 匹配任何包含在括号里的单字符
[!..] 匹配任何不包含在括号里的单字符

注意:
*能匹配文件或目录名中的.,但不能匹配首字符是.的文件或目录名。要匹配隐含文件应该使用.*

ps

刚开始接触Linux的时候,可能会比较枯燥,确实选择学习是一件令人非常枯燥无味的事情。不过没关系,后续学了命令之后,Linux还是比较有趣的,学到后面,你肯定会感觉Linux的效率比Windows的效率更高,坚持下去,你一定可以看到别人看不到的风景,写的有错误或不恰当的地方还请各位小伙伴批评指正!!!

Linux 操作基础——shell相关推荐

  1. 第1篇、Linux操作基础|Shell基础命令

    1.操作系统和内核 常见操作系统: windows  iOS  macOS  安卓  塞班  鸿蒙 deepin  ubuntu   centos 内核分类: nuix(收费.不开源) linux(开 ...

  2. linux之基础shell脚本编程1 基础变量赋值

    本章主要介绍函数的基础,变量赋值,逻辑运算,条件表达式,测试 linux之基础shell脚本编程1  基础变量赋值 linux之基础shell脚本编程2 if语句循环判断 linux之基础shell脚 ...

  3. Linux操作基础(创建RAID10磁盘阵列)

    文章目录 一 .检查是否已安装mdadm 软件包 二 .使用fdisk工具安装四块硬盘 三 .创建 RAID 设备 四 .创建并挂载文件系统 五 .创建 /etc/mdadm.conf 配置文件,方便 ...

  4. Linux操作基础(十七)之Systemd入门教程(二)实战篇

    上一篇文章,我介绍了 Systemd 的主要命令,今天介绍如何使用它完成一些基本的任务. 一.开机启动 对于那些支持 Systemd 的软件,安装的时候,会自动在/usr/lib/systemd/sy ...

  5. 第 4 篇、Linux操作基础 | 计算机组成

    1.计算机的组成  输入输出设备   输入:键盘.鼠标.麦克风.触控屏 输出:屏幕.音响 ALU运算器(运算单元) 控制器 存储设备 总线(传递数据) 2.存储设备类型 存储设备的类型:内存.外存 内 ...

  6. 第 2 篇、Linux操作基础 | Vim编辑器使用

    1.Vim介绍 [本质] 文本编辑器 [使用] vi 或vim (vim是vi的升级版)vim +文件名 [模式]vim界面分为三种命令行模式.插入模式.底行模式.命令行模式:主要复制 粘贴 剪切 等 ...

  7. linux操作系统 第02章 linux操作做基础

                                                                                       第2章    Linux操作基础 ...

  8. linux系统基础与应用,Linux操作系统:基础、原理与应用

    <Linux操作系统:基础.原理与应用> 第1部分基础篇 第1章操作系统概述/3 1.1认识操作系统3 1.1.1操作系统的概念3 1.1.2操作系统的功能4 1.2操作系统的发展与现状5 ...

  9. linux操作系统第二版张玲课后答案,Linux操作系统(基础原理与应用第2版高等学校计算机专业规划教材)...

    导语 内容提要 本书以理论结合实践,注重应用为原则,全面.系统地讲述操作系统的基本原理,并将其与Linux的实现和应用技术紧密结合.全书内容分为3部分:第1部分为基础篇,共4章,包括Linux系统概述 ...

最新文章

  1. device.cpp
  2. 从SeekFree的Gitee开源库建立通用MM32开发模板
  3. GO标准库—命令行参数解析FLAG
  4. 获取inout框中未改变值的数据_数据分析10——数据分析的基本过程(02)
  5. PHP中使用Filter进行数据安全过滤
  6. 十九、动态加载脚本和样式
  7. 解决ubuntu下修改环境变量profile后报错,很多常用命令都用不了
  8. 【Demo 0003】Java基础-数组
  9. 在el-table中使用el-popover,没法点击确定或取消来关闭添加 多个按钮
  10. 用JAVA实现小学四则运算
  11. 网络攻防 第六周学习总结
  12. 为什么发烧友更偏爱头戴式蓝牙耳机呢?五款高音质音乐蓝牙耳机推荐
  13. 音乐推荐系统(协同过滤和SVD)
  14. 新手如何做好网络营销
  15. 泛函分析 第二章 线性算子与线性泛函
  16. 《中国近代史纲要》思维导图复习版
  17. 什么是光时域反射仪,OTDR的工作原理是什么
  18. 分布式、高并发、高性能场景(抢购、秒杀、抢票、限时竞答)数据一致性解决方案...
  19. P2P与SIP技术的研究
  20. 使用JavaScript进行销毁:操作指南

热门文章

  1. php 电脑桌面弹窗,Windows桌面添加我的电脑
  2. 懒散的态度就是一剂慢性毒药——《我是一只IT小小鸟》读后感(第四周)
  3. html5 语音包,在vue中使用vue-i18n按需加载语言包
  4. Lauch Debugger automatically when start the process
  5. MATLAB绘图自定义曲线颜色
  6. Vue + 项目优化 通过externals加载外部CDN资源
  7. 【观察】解读QBBSS质量链落地价值,质量强国战略迈出关键一步
  8. swagger-ui 转换成文档
  9. illustrator基本操作
  10. 常用的第三方api汇总[获取天气]