shell脚本用什么语言编写,shell脚本是什么?
shell脚本用什么语言编写,shell脚本是什么?详细介绍
本文目录一览: shell脚本是什么?
当执行命令或程序语句是通过程序文件而不是命令行,那这个程序被称为Shell脚本。如果Shell脚本内置很多命令、语句及循环控制,然后一次性执行完毕,这种通过文件执行脚本的方式称为非交互方式。用户可以在Shell脚本中输入一系列命令及命令语句组合。这些命令、变量和流程控制语句等有机地结合在一起,就形成一个功能强大的Shell脚本。
请问shell脚本是什么?学LINUX一定要会shell脚本吗?
首先你这个问题的分类居然是Windows。
想要让Linux内核工作,你得有一个工具,这个工具就是Shell,你通过shell去操作,于是你会遇到很多命令,学着学着你会发现经常需要敲很多命令才能完成一项任务,于是你把这些命令放在一起,写在一个文件中,让Shell按顺序一个个自动运行,于是这个文件就成为了最简单的Shell脚本。
确切一点说,Shell就是一个命令型解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向Linux发送请求以便运行程序的接口系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。瑭锦-tanjurd解释Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言(就是你所说的shell脚本)。作为命令语言,它互动式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。它虽然不是 Linux系统内核的一部分,但它调用了系统内核的大部分功能来执行程序、创建文档并以并行的方式协调各个程序的运行。
Shell脚本的概念区别
Shell
:
Shell是一种程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支
脚本
:
脚本,是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。
Shell脚本
:
shell脚本(shell
script)就像早期dos年代的.bat,最简单的功能就是将许多指令汇整写一起,让使用者很容易地就能够一个操作执行多个命令,而shell
script更是提供了数组,循环,条件以及逻辑判断等重要功能,让使用者可以直接以shell来写程序,而不必使用类似C程序语言等传统程序编写的语法。
shell和shell脚本区别
:
1.
Shell就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。可以用Shell来启动、挂起、停止甚至是编写一些程序。
2.
Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。
3.
Shell既是一种命令语言,又是一种程序设计语言(就是所说的shell脚本)。
给脚本加上执行权限chmod
u+x
a.sh,
而后就可以直接用全路径来执行脚本了,比如当前文件夹下用./a.sh,如果如果脚本所在目录在path环境变量之中,
则直接用a.sh即可(这和运行我们自己编写的程序是一个道理)sh/bash
./a.sh
这种情况不需要脚本具有执行权限以上两种执行方式都是在子shell中执行的,也就是说当前shell需要启动另外一个shell,用来执行a.sh内的命令source
./a.sh
.
./a.sh(注意前面的
.
)以上两种执行方式是在当前shell下执行,并不需要建立子shellsource和
.
命令的作用:用来执行一个脚本
前两种方式和后两种方式的另外区别:如果你在一个脚本里export
$kkk=111
,如果你用./a.sh执行该脚本,执行完毕后,你运行
echo
$kkk
,发现没有值,如果你用source来执行
,然后再echo
,就会发现kkk=111。因为调用./a.sh来执行shell是在一个子shell里运行的,所以执行后,结构并没有反应到父shell里,但是
source不同它就是在本shell中执行的,所以可以看到结果。
shell和shell脚本 有什么区别啊
给脚本加上执行权限chmod
u+x
a.sh,
而后就可以直接用全路径来执行脚本了,比如当前文件夹下用./a.sh,如果如果脚本所在目录在path环境变量之中,
则直接用a.sh即可(这和运行我们自己编写的程序是一个道理)sh/bash
./a.sh
这种情况不需要脚本具有执行权限以上两种执行方式都是在子shell中执行的,也就是说当前shell需要启动另外一个shell,用来执行a.sh内的命令source
./a.sh
.
./a.sh(注意前面的
.
)以上两种执行方式是在当前shell下执行,并不需要建立子shellsource和
.
命令的作用:用来执行一个脚本
前两种方式和后两种方式的另外区别:如果你在一个脚本里export
$kkk=111
,如果你用./a.sh执行该脚本,执行完毕后,你运行
echo
$kkk
,发现没有值,如果你用source来执行
,然后再echo
,就会发现kkk=111。因为调用./a.sh来执行shell是在一个子shell里运行的,所以执行后,结构并没有反应到父shell里,但是
source不同它就是在本shell中执行的,所以可以看到结果。
shell跟shell脚本没有区别,shell就是单条命令,逐条执行,shell脚本就是把逐条命令堆积在一起,加上逻辑判断,形成缜密的自动化脚本。
shell和shell脚本本质上没啥区别,shell就是那些指令的抽象统称,shell脚本就是使用shell具体的指令来完成一个复杂逻辑
"shell" 和 "shell script" 是计算机领域的两个术语,它们之间有一些区别。
Shell:这是一种解释型的命令行界面,是操作系统的一个外壳。它允许用户通过命令行来执行操作系统的各种任务,如执行命令、管理文件、运行程序等。
Shell script:这是一种使用 shell 语言编写的脚本。它允许用户在 shell 环境中使用脚本语言自动执行一系列命令和任务,以完成一个特定的任务。
总的来说,shell 是一种命令行界面,而 shell script 则是一种使用 shell 语言的脚本,它可以在 shell 环境中执行。
请问Shell脚本编程是通过什么软件编写的吗??
shell不是编译型语言,是解释型语言,就跟dos里的批处理一样,只不过比dos批处理功能强太多了
所以就是直接用文本编辑器,没什么辅助工具,unix里就用vi写,windows里顶多就是ultraedit里可以有shell脚本的着色模板~
c语言不需要visual c++写,只要一个记事本就可以了,写好后编译为二进制文件,就可运行。
shell也不需要什么工具,只用一个记事本就可以写,写好后就可运行。因为它是解释型的,解释器会边解释边执行。
用任何文本处理工具都可以,记事本之类的都行。脚本的意思,就是它本身是文本,然后通过虚拟机执行。
最搭的就是VI了,不行还有windows下的VI,或者用UE,默认没有shell的语法着色,到其官网上下一个!!
shell他是专门的一种语言,我用到的时候是在linux下系的,直接vi就可以编写了,具体没做深究。
各种脚本语言,比如shell和tcl、perl有啥区别呢?
一、指代不同
1、perl:一种功能丰富的计算机程序语言,运行在超过100种计算机平台上。
2、tcl:工具命令语言。
3、shell:为使用者提供操作界面”的软件(命令解析器)。
二、特性不同
1、perl:l借取了C、sed、awk、shell脚本语言以及很多其他程序语言的特性,其中最重要的特性是它内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。
2、tcl:本身不提供面向对象的支持。但是语言本身很容易扩展到支持面向对象。许多C语言扩展都提供面向对象能力,包括XOTcl,Incr Tcl等。另外SNIT扩展本身就是用TCL写的。
3、shell:交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令。
三、优势不同
1、perl:可以很容易操作数字,文本,文件和目录,计算机和网络,特别是程序的语言。这种语言应该很容易运行外部的程序并且扫描这些程序的输出获取感兴趣的东西。
2、tcl:经常被用于 快速原型开发,脚本编程,GUI和测试等方面。
3、shell:作为程序设计语言,定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。
参考资料来源:百度百科-TCL语言
参考资料来源:百度百科-perl
参考资料来源:百度百科-shell
SHELL脚本是什么?
当执行命令或程序语句是通过程序文件而不是命令行,那这个程序被称为Shell脚本。如果Shell脚本内置很多命令、语句及循环控制,然后一次性执行完毕,这种通过文件执行脚本的方式称为非交互方式。用户可以在Shell脚本中输入一系列命令及命令语句组合。这些命令、变量和流程控制语句等有机地结合在一起,就形成一个功能强大的Shell脚本。
http://baike.baidu.com/view/1440787.htm 参考百科
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 是操作系统的最外层。shell 合并编程语言以控制进程和文件,以及启动和控制其它程序。shell 通过提示您输入,向操作系统解释该输入,然后处理来自操作系统的任何结果输出来管理您与操作系统之间的交互。 shell 向提供了与操作系统通信的方式。此通信以交互的方式(来自键盘的输入立即操作)或作为一个 shell 脚本执行。shell 脚本是 shell 和操作系统命令的序列,它存储在文件中。 当登录到系统中时,系统定位要执行的 shell 的名称。在它执行之后,shell 显示一个命令提示符。此提示符通常是一个 $(美元符)。当提示符下输入命令并按下 Enter 键时,shell 对命令进行求值,并尝试执行它。取决于命令说明,shell 将命令输出写到屏幕或重定向到输出。然后它返回命令提示符,并等待您输入另一个命令。 编程步骤 1、 启动Visual C++6.0,生成一个Win32应用程序,项目命名为"Shell"; 2、 添加应用程序图标资源APP_ICON和对话框资源DLG_MAIN,对话框界面按上图一设计; 3、 使用Class Wizard为对话框上的各个按钮添加鼠标单击处理函数; 4、 添加代码,编译运行程序。
有点类似于windows的批处理,不过要强大得多,可以看成一门编程语言!
可以和Linux打交道的语言。
比如你在win下新建文件夹,删除文件等等,都可以用shell语言来执行。
shell语言,或者可以理解为linux命令组成的语言。
在计算机科学中,Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。它类似于DOS下的command.com。它接收用户命令,然后调用相应的应用程序。同时它又是一种程序设计语言。作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高阶语言中才具有的控制结构,包括循环和分支。在C++中,Shell是希尔排序的名称。 基本上shell分两大类: 一:图形界面shell(Graphical User Interface shell 即 GUI shell) 例如:应用最为广泛的 Windows Explorer (微软的windows系列制作系统),还有也包括广为人知的 Linux shell,其中linux shell 包括 X windows manger (BlackBox和FluxBox),以及功能更强大的CDE、GNOME、KDE、 XFCE。 二:命令行式shell(Command Line Interface shell ,即CLI shell) 例如: bash / sh / ksh / csh(Unix/linux 系统) COMMAND.COM(MS-DOS 系统) cmd.exe / 命令提示字符(Windows NT 系统) Windows PowerShell(支援 .NET Framework 技术的 Windows NT 系统) 传统意义上的shell指的是命令行式的shell,以后如果不特别注明,shell是指命令行式的shell。 文字操作系统与外部最主要的接口就叫做shell。shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。 shell提供了你与操作系统之间通讯的方式。这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被重复使用。本质上,shell script是命令行命令简单的组合到一个文件里面。 Shell基本上是一个命令解释器,类似于DOS下的command.com。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourne shell (sh)和C shell (csh)。 交互式shell和非交互式shell 交互式模式就是shell等待你的输入,并且执行你提交的命令。这种模式被称作交互式是因为shell与用户进行交互。这种模式也是大多数用户非常熟悉的:登录、执行一些命令、签退。当你签退后,shell也终止了。 shell也可以运行在另外一种模式:非交互式模式。在这种模式下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们。当它读到文件的结尾,shell也就终止了。 shell的类型 在UNIX中主要有两大类shell Bourne shell (包括 sh, ksh, and bash) Bourne shell ( sh) Korn shell ( ksh) Bourne Again shell ( bash) POSIX shell ( sh) C shell (包括 csh and tcsh) C shell ( csh) TENEX/TOPS C shell ( tcsh) Bourne Shell 首个重要的标准Unix Shell是1970年底在V7 Unix(AT&T第7版)中引入的,并且以它的创始科技部基础条件平台“国家气象网络计算应用节点建设”(2004DKA50730)资助者Stephen Bourne的名字命名。Bourne shell 是一个交换式的命令解释器和命令编程语言。Bourne shell 可以运行为login shell或者login shell的子shell(subshell)。只有login命令可以调用Bourne shell作为一个login shell。此时,shell先读取/etc/profile文件和$HOME/.profile文件。/etc/profile文件为所有的用户定制环境,$HOME/.profile文件为本用户定制环境。最后,shell会等待读取你的输入。 C Shell Bill Joy于20世纪80年代早期,在Berkeley的加利福尼亚大学开发了C shell。它主要是为了让用户更容易的使用交互式功能,并把ALGOL风格的语法结构变成了C语言风格。它新增了命令历史、别名、文件名替换、作业控制等功能。 Korn Shell 有很长一段时间,只有两类shell供人们选择,Bourne shell用来编程,C shell用来交互。为了改变这种状况,AT&T的bell实验室David Korn开发了Korn shell。ksh结合了所有的C shell的交互式特性,并融入了Bourne shell的语法。因此,Korn shell广受用户的欢迎。它还新增了数学计算,进程协作(coprocess)、行内编辑(inline editing)等功能。Korn Shell 是一个交互式的命令解释器和命令编程语言.它符合POSIX——一个操作系统的国际标准.POSIX不是一个操作系统,而是一个目标在于应用程序的移植性的标准——在源程序一级跨越多种平台。 Bourne Again Shell (bash) bash是GNU计划的一部分,用来替代Bourne shell。它用于基于GNU的系统如Linux.大多数的Linux(Red Hat, Slackware, Caldera)都以bash作为缺省的shell,并且运行sh时,其实调用的是bash。 POSIX Shell POSIX shell 是Korn shell的一个变种. 当前提供POSIX shell的最大卖主是Hewlett-Packard。在HP-UX 11.0 , POSIX shell 就是/bin/sh,而bsh是/usr/old/bin/sh. 各主要操作系统下缺省的shell: AIX 下是Korn Shell. Solaris缺省的是Bourne shell. FreeBSD缺省的是C shell HP-UX缺省的是POSIX shell. Linux是Bourne Again shell. Windows PowerShell 是一种新的交互式的命令行和基于任务脚本编写技术,它使信息技术 (IT) 管理员能够全面地自动操作和控制系统管理任务,从而提高了管理员的生产力。Windows PowerShell 包括多个系统管理实用工具、一致的语法和命名惯例、及对普通管理数据更好地导航,如登记、证书存储 或 Windows Management Instrumentation (WMI)。Windows PowerShell 还专门针对 IT 管理,提供直观的脚本编写语言。 Shell也是一个VB函数,它的作用是运行程序,语法是Shell(命令字符串[,窗口类型])