Shell的作用
Shell 是一种特殊的程序,被用作用户与内核(kernel)的UNIX操作系统核心通讯。shell脚本可以进行机器的自动化管理、追踪和管理系统重要工作、简单的入侵检测、命令执行一体化及简单的数据处理等,帮助系统管理员快速的管理机器。
Shell 的主要功能有:
1、解释交互运行时,在命令行提示下敲入的命令。
2、指定用户环境,通常在Shell初始化文件中作这种工作。
3、Shell可以用作解释编程语言,Shell程序也叫做命令表,由在文件中列出的命令组成。
Shell的种类
* Bash:
Bourne Again shell,Linux使用最广,最强大的shell。符合POSIX,兼容Bourne shell,由GNU project (Free Software Foundation)创建发行。
功能:命令行编辑,命令历史,,自动完成,兼容Bourne shell。
* csh
Berkeley开发,在交互式应用方面兼容Bourne shell,但是编程接口不同。没有命令行编辑功能。命令历史功能强。Linux中,csh是更新的tcsh的代称。
* ksh
Unix系统中最通用的shell。第一个引入现代shell技巧的shell。兼容Bourne shell,有命令行编辑功能。
* sh
Bourne shell,最原始的shell,没有命令行编辑功能。个人觉得linux多数已经成了bash的代称。
* tcsh
增强的csh,有命令行编辑功能。
* zsh
最新的shell,兼容Bourne shell,命令行编辑功能。自动完成功能强大。
主要的Shell命令
who mv rm wc ls cat date at lpr rsh more awk pwd bc vi finger w pg find cc cp dd grep ksh sh ps sed cal lp
建立第一个简单的测试文件test.sh
ubuntu环境下在自己要创建文件的目录里建立一个test.sh文件,文件里写上一段代码,代码如下:
1
2
3
4
5
|
#!/bin/sh
a= "hello world"
echo "A is: ${a} avalaible"
read a
echo $a
|
然后保存,第一个shell例子就完成了,下面解析以下代码的意思:
#!/bin/sh 是shell语言的头,shell语言是以它为开始的
a="hello world" 给变量a初始化一个字符串"hello world"
echo "A is: ${a} avalaible" 打印出变量a,${a}是取变量a的值,相当于c语言中printf("A is: %s avalaible",&a);
read a 从键盘获取变量的值
echo $a 打印出a的值
打开命令行终端,进入该文件所在的目录,输入运行该文件的命令:./test.sh
运行结果如下:
A is: hello world avalaible
hello
hello
shell语言是轻量级的脚本语言,但它的用法很灵活,还需要慢慢学习啊,shell的用处还是很多的,linux环境下的好多软件里都有.sh文件,因此了解熟悉shell语言还是很有必要的。
分享到:
相关推荐
### Shell Script 编程学习笔记 #### 一、Shell 脚本初窥 ##### 示例: ```bash #!/bin/sh # 第1行:指定脚本解释器(声明使用的shell名称),这里是用/bin/sh做解释器的。“#!”是一个约定的标记 cd ~ # 第2行:...
总结来说,《Unix Shell 实例精解》是一本全面、实用的教程,涵盖了从基础到高级的Shell编程知识,无论你是初入Shell编程的新手还是寻求提升的专家,都能从中受益匪浅。配合清晰的PDF版本,学习过程更加便捷,让Unix...
总的来说,《LINUX与UNIX SHELL编程指南》是一本全面覆盖SHELL编程和UNIX基础知识的书籍,通过学习,读者不仅能掌握SHELL编程技术,还能深化对LINUX和UNIX操作系统的理解,从而在日常工作中更加得心应手。...
Korn Shell是由David Korn在1980年代初为AT&T Unix系统开发的一种Shell。Korn Shell融合了Bourne Shell和C Shell的优点,并引入了许多新的特性,如数组支持、更强大的文本处理能力和更好的调试工具。Korn Shell被...
Linux shell 编程课程设计报告 本报告将对 Linux shell 编程课程设计进行总结,介绍课程设计的目的、设计原理、实验...通过本课程设计,学生将学习到 Shell 语言的一般语法规则和 Shell 程序的执行环境和执行过程。
- Korn Shell 是由 David Korn 在 1980 年代初开发的,目的是为了提供一个更强大、更易用的 shell。 - 它的设计融合了 C Shell (csh) 和 Bourne Shell (sh) 的最佳特性,并引入了许多新的功能。 - **Korn Shell ...
总的来说,《LINUX与UNIX SHELL编程指南》是一本全面且实用的教程,无论你是初入Shell编程的新手,还是希望进一步提升技能的资深开发者,都能从中受益匪浅。通过阅读这本书,配合Shell命令的实际操作,你将能够编写...
《Linux与Unix Shell编程指南》是一本面向各个层次用户的实用教程,无论你是初涉Linux或Unix系统的新人,还是已经有一定经验的老手,都能从中获益。Shell编程是Linux和Unix系统中的重要一环,它提供了命令行接口,...
- **Korn Shell 高级特性**:深入学习Korn Shell提供的高级功能,如数组支持、模式匹配等。 - **sed 和 awk 高级应用**:掌握sed和awk的高级用法,实现复杂的数据处理需求。 - **调试技巧**:学习如何调试Shell脚本...
在Unix系统中,Shell脚本是一...无论你是初涉Shell脚本的新手,还是寻求深化技能的资深用户,这本书都能提供宝贵的指导和启示。通过不断地学习和实践,你将能够利用Shell脚本的强大功能,简化工作流程,提高工作效率。
该项目为IT小白运维入门设计,采用Shell和Python两种语言编写,共计70个文件,其中Shell脚本44个,Markdown文档8个,Python脚本4个,YAML配置3个,SQL脚本3个,文本文件3个,许可证文件1个,Ansible配置文件1个,PNG...
虽然Vi的命令语法可能初看起来复杂,但熟练后可以大大提高文本编辑效率。 这些工具的组合使用能帮助开发者在Linux环境中实现高效的软件开发流程。理解并熟练使用GCC进行编译,通过GDB进行调试,利用Makefile自动化...
《Unix初學者使用手冊》是一份专为Unix初学者设计的学习指南,旨在帮助新手快速掌握Unix操作系统的基础知识和核心技能。Unix是一种强大的多用户、多任务操作系统,广泛应用于服务器、科研、软件开发等领域。这份手册...
对于Linux初中级学习者来说,掌握其基本概念和技术是至关重要的。本教程集合了丰富的Linux操作系统技术,旨在帮助学习者从入门到进阶,深入理解Linux系统的核心理念和实用技能。 1. **Linux简介**:Linux是一种自由...
Expect 是由 Don Libes 在1990年代初开发的,它提供了一种新的方式来控制和自动化那些需要用户输入的程序。Expect 可以模拟键盘输入,自动响应程序的提示,极大地提高了自动化脚本的效率。它是通过读取预期的输出(...
每个文件在创建之初,便预设了三种基本访问方式: 1. **读取(r)**:允许查看文件内容。 2. **写入(w)**:允许修改或删除文件。 3. **执行(x)**:若文件为Shell脚本或程序,则允许执行。 #### 权限分类 文件权限依据...
PyTorch作为当今最热门的深度学习框架之一,是由Facebook的人工智能研究实验室(FAIR)开发的一个开源机器学习库。它结合了Python的强大编程能力与Torch框架的科学计算优势,为用户提供了一个灵活且高效的平台,用于...