Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。

它虽然不是Unix/Linux系统内核的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Unix/Linux系统的关键。

可以说,shell使用的熟练程度反映了用户对Unix/Linux使用的熟练程度。

注意:单独地学习 Shell 是没有意义的,请先参考Unix/Linux入门教程,了解 Unix/Linux 基础。

Shell有两种执行命令的方式:

  • 交互式(Interactive):解释执行用户的命令,用户输入一条命令,Shell就解释执行一条。
  • 批处理(Batch):用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲命令。

Shell脚本和编程语言很相似,也有变量和流程控制语句,但Shell脚本是解释执行的,不需要编译,Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。

Shell初学者请注意,在平常应用中,建议不要用 root 帐号运行 Shell 。作为普通用户,不管您有意还是无意,都无法破坏系统;但如果是 root,那就不同了,只要敲几个字母,就可能导致灾难性后果。

Shell简介:什么是Shell,Shell命令的两种执行方式相关推荐

  1. shell脚本的两种执行方式区别举例

    1. sh及bash方式执行: 第一个字母l:看来sh只是bash的一个链接. 要了解区别,先建立一个实验脚本如下: echo 'udir=`pwd`' >testsource.sh #符号为单 ...

  2. matlab查看命令的两种常见方式(help和doc)

    1,hlep+命令,比如help save.会在命令行窗口显示文档. 2,doc+命令,比如doc save.会直接打开操作文档.

  3. linux快捷命令补齐,Linux Shell简介——自动补齐/命令行的历史记录/编辑命令行/可用的 Shell 快捷方式.doc...

    Linux Shell简介--自动补齐/命令行的历史记录/编辑命令行/可用的 Shell 快捷方式 Unix (及后继者 Linux)在命令行下面诞生,因此,Unix 中的命令行有许多非常实用的功能. ...

  4. shell 不等于_关于shell编程中的整数值比较的两种方式的简单操作实例

    谈一谈关于shell编程中的整数值比较的两种方式 Shell编程有时处理一个对象时,需要我们对对象进行测试. 只有符合要求的才采取下一步操作,这样做的好处可以避免程序出错. 这个测试的对象可以是文件. ...

  5. 【IOC 控制反转】IOC 简介 ( 依赖注入的两种实现方式 | 编译期注入 | 运行期注入 )

    文章目录 一.IOC 简介 二.依赖注入的两种实现方式 一.IOC 简介 IOC 是 Inversion Of Control 的缩写 , 控制反转 ; 其最主要的作用是 降低代码的耦合度 , 最常见 ...

  6. 简述使用ftp进行文件传输时的两种登录方式?它们的区别是什么?常用的ftp文件传输命令是什么?

    简述使用ftp进行文件传输时的两种登录方式?它们的区别是什么?常用的ftp文件传输命令是什么? 参考答案: (1)ftp有两种登录方式:匿名登录和授权登录.使用匿名登录时,用户名为:anonymous ...

  7. Database之SQLSever:SQLSever数据表管理(GUI法/SQL语句命令法两种方法实现建立表、修改表,以及增、删、改、查)之详细攻略

    Database之SQLSever:SQLSever数据表管理(GUI法/SQL语句命令法两种方法实现建立表.修改表,以及增.删.改.查)之详细攻略 目录 一.两种方法建立表.修改表,插入多条数据记录 ...

  8. Database之SQLSever:SQLSever数据库管理(GUI法/SQL语句命令法两种方法实现备份(完整备份、差异备份、日志备份)、还原、删除、修改数据库等案例)之详细攻略

    Database之SQLSever:SQLSever数据库管理(GUI法/SQL语句命令法两种方法实现备份(完整备份.差异备份.日志备份).还原.删除.修改数据库等案例)之详细攻略 目录 数据库管理 ...

  9. 3D MAX入门篇(1)常用快捷命令及两种基础建模方式

    3D MAX入门篇(1)常用快捷命令及两种基础建模方式 基于图片的对程型模型----画线式建模 1.在界面画一个平面 2.调整平面大小,确认与要插入的图片尺寸一样 3.通过添加样条线绘制出模型的一半 ...

最新文章

  1. cocoa下的多线程实践
  2. mysql忽略列,MySQL:使用DISTINCT时忽略选定的列
  3. 天气模式_北方降雪骤减!南方开启湿冷模式多阴雨!|天气展望
  4. JMeter的编码与HTTP请求
  5. 最大流算法 - 标号法
  6. 如何将wmv视频格式快速转换成mp4视频呢
  7. 第十一章 面向对象设计
  8. CCF CSP 201903-1 小中大
  9. error: Package requirements (sqlite3 > 3.7.4) were not met:
  10. 文件不见还占用空间咋修复
  11. 真正可用的获取任意进程的内存使用率 和任务管理器一模一样
  12. iOS Vary for Traits
  13. BUUCTF-pwn(18)
  14. 小米红米Note4X(高配版)线刷兼救砖_解账户锁_纯净刷机包_教程
  15. 关于一种新的空气内新冠病毒检测方式的诸多设想
  16. Unity Scripts Only Build
  17. SQL Server—查询表结构
  18. 深入解读A/B 测试的统计学原理
  19. 软件测试周刊(第19期):以能力、流程、指标和工具为轴心打造一流的质量保证部门
  20. linux制作windows光盘,在Windows上制作CentOS自动安装的光盘的教程分享

热门文章

  1. log4j2 无垃圾模式
  2. 忘记密码漏洞案例分析
  3. 全局变量-global关键字修改全局变量
  4. ZooKeeper快速入门
  5. android开发版本,Android开发之版本统一规范
  6. linux删除文件夹提示没找到,Win10中遇到删除文件夹提示找不到该项目的解决过程...
  7. 配置 Windows 环境变量的方法
  8. zsh配置其显示当前文件路径
  9. CentOS7通过yum安装MySQL5.7
  10. 关于提高代码复用性的几个知识点的回顾