更新时间:2022-07-27 11:16:16 来源:极悦 浏览624次
Shell为您提供到 Unix 系统的接口。它从您那里收集输入并根据该输入执行程序。当一个程序完成执行时,它会显示该程序的输出。
Shell 是一个环境,我们可以在其中运行我们的命令、程序和 shell 脚本。shell 有不同的风格,就像操作系统有不同的风格一样。每种 shell 风格都有自己的一组公认的命令和功能。
提示符$称为命令提示符,由 shell 发出。显示提示时,您可以键入命令。
在您按下Enter后,Shell 会读取您的输入。它通过查看输入的第一个单词来确定要执行的命令。一个词是一组完整的字符。空格和制表符分隔单词。
以下是date命令的一个简单示例,它显示当前日期和时间
$date
Thu Jun 25 08:30:19 MST 2009
您可以使用环境教程中解释的环境变量 PS1 自定义命令提示符。
在 Unix 中,有两种主要类型的 shell -
Bourne shell - 如果您使用的是 Bourne 类型的 shell,则$字符是默认提示符。
C shell - 如果您使用的是 C 类型的 shell,则 % 字符是默认提示符。
Bourne Shell 有以下子类别 :
伯恩壳 (sh)
Korn 壳 (ksh)
Bourne Again shell (bash)
POSIX 外壳 (sh)
不同的 C 型外壳如下 :
C 外壳 (csh)
TENEX/TOPS C 外壳 (tcsh)
最初的 Unix shell 是由 Stephen R. Bourne 在 1970 年代中期在新泽西州的 AT&T 贝尔实验室编写的。
Bourne shell 是第一个出现在 Unix 系统上的 shell,因此被称为“shell”。
在大多数版本的 Unix 上,Bourne shell 通常安装为/bin/sh 。出于这个原因,它是编写可在不同版本的 Unix 上使用的脚本的首选 shell。
shell 脚本的基本概念是一个命令列表,这些命令按执行顺序列出。一个好的 shell 脚本会有注释,前面有#符号,描述这些步骤。
有条件测试,比如值A大于值B,循环允许我们遍历海量数据,文件读取和存储数据,变量读取和存储数据,脚本可能包含函数。
我们将在接下来的部分中编写许多脚本。这将是一个简单的文本文件,我们将在其中放置所有命令和几个其他必需的构造,这些构造告诉 shell 环境要做什么以及何时执行。
Shell 脚本和函数都被解释。这意味着它们没有被编译。
假设我们创建了一个test.sh脚本。请注意,所有脚本都将具有.sh扩展名。在向脚本添加任何其他内容之前,您需要提醒系统正在启动一个 shell 脚本。这是使用shebang构造完成的。例如
#!/bin/sh
这告诉系统后面的命令将由 Bourne shell 执行。之所以称为 shebang,是因为#符号称为哈希,而 ! 符号称为 bang。
要创建包含这些命令的脚本,请先放置 shebang 行,然后添加命令
#!/bin/bash
pwd
ls
Shell 脚本有几个必需的结构,它们告诉 shell 环境做什么和什么时候做。当然,大多数脚本都比上述脚本更复杂。
毕竟,shell 是一种真正的编程语言,包含变量、控制结构等。无论脚本变得多么复杂,它仍然只是顺序执行的命令列表。
以下脚本使用读取命令从键盘获取输入并将其分配为变量 PERSON 的值,最后将其打印在 STDOUT 上。
#!/bin/sh
# Author : Zara Ali
# Copyright (c) Tutorialspoint.com
# Script follows here:
echo "What is your name?"
read PERSON
echo "Hello, $PERSON"
这是脚本的示例运行
$./test.sh
What is your name?
Zara Ali
Hello, Zara Ali
$
以上就是关于“shell编程基础教程”的介绍,大家如果想了解更多相关知识,不妨来关注一下极悦的Java极悦在线学习,里面的课程内容由浅到深,适合小白学习,希望对大家能够有所帮助。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习