⑴ SHELL脚本是什么
Shell Script,Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高,毕竟它使用了Linux/Unix下的命令。
换一种说法也就是,shell script是利用shell的功能所写的一个程序,这个程序是使用纯文本文件,将一些shell的语法与指令写在里面,然后用正规表示法,管线命令以及数据流重导向等功能,以达到我们所想要的处理目的。
更明白的来说,shell script就像早期dos年代的.bat,最简单的功能就是将许多指令汇整写一起,让使用者很容易的就能够一个操作执行多个命令,而shell script更是提供了数组,循环,条件以及逻辑判断等重要功能,让使用者可以直接以shell来写程序,而不必使用类似C程序语言等传统程序编写的语法。
shell和shell脚本的区别:
shell是什么呢?确切一点说,Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。 Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言(就是你所说的shell脚本)。作为命令语言,它互动式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。它虽然不是 Linux系统内核的一部分,但它调用了系统内核的大部分功能来执行程序、创建文档并以并行的方式协调各个程序的运行。
⑵ shell 在操作系统中的作用(详细点)
shell的一项主要功能是在交互方式下解释从命令行输入的命令。shell解析命令行,将其分解为词(也称为token),词之间由空白分隔,空白由制表符、空格键或换行组成。如果词中有特别的元字符,shell会对其进行替换。shell处理文件I/O和后台进程。对命令行的处理结束后,shell搜索命令并开始运行他。
shell的另一项重要功能是制定用户环境,这通常在shell的初始化文件中完成。初始化文件中有非常多定义,包括设置终端键和窗口属性,设置用来定义搜索路径、权限、提示符和终端类型的变量,设置特定应用程式所需的变量,如窗口、字处理程式和编程语言的库等。Korn/Bash shell和C/TC shell还提供了更多的制定功能:历史添加、别名、设置内置变量防止用户破坏文件或无意中退出,通知用户作业完成。
shell还能用作解释性的编程语言。shell程式(也称为shell脚本)由文件中的一列命令组成。shell程式用编辑器生成(也能在命令行上直接输入脚本)。他们由UNIX命令组成,命令之间插入了一些基本的程式结构,如变量赋值、条件测试和循环。shell脚本不必编译。shell会逐行解释脚本,就似乎他是从键盘输入相同。shell负责解释命令,因此,用户需要了解可用的命令有哪些。附录A中列出了一些有用的命令。
1.3.2 shell的职责
shell负责确保用户在命令提示符后输入的命令被正确执行。其职责包括:
(1) 读取输入并解析命令行
(2) 替换特别字符,比如通配符和历史命令符
(3) 设置管道、重定向和后台处理
(4) 处理信号
(5) 程式执行的相关设置
⑶ SHELL脚本语言在LINUX系统中有什么作用
shell脚本里可以写程序,利用linux系统的各种现成的命令,来重新组合成一个新的程序,这个程序可以实现你要的功能,从而替代大量手工输入的各种命令,很方便
⑷ linux中的shell是什么有什么作用
Shell是人机交互用的一个程序。
用户有shell了就可以登陆系统并且可以用命令和系统交互,肯定不安全。
没有shell就无法用命令去和系统对话,自然安全多了。
最“土”的办法就是用用户名和密码登陆一下,能进去就是有用户shell,进不去就是没有用户shell。
⑸ $! SHELL中什么作用或意思
【说明】
$! :用于标识后台运行的最后一个进程的id
【实例】
后台运行 sleep 20 & ###后台执行睡眠20秒
然后ps出来这个后台进程,再运行echo $!,就能发现这个参数的作用了
【建议】
找个参考资料吧,一份就够了,不要可以学习,需要的时候或者有疑问的时候查查,慢慢就会了
⑹ shell脚本中.起到了什么作用
起 声明 或者 执行某操作的作用
比方 经典的hello world的shell版本
#!/bin/bash
echo "hello world"
其中 第一行为执行解释器环境
第二行则是往标准输出输出hello world