怎么写shell脚本

1. Linux如何编写shell脚本 一般以
#!/bin/sh
开头(不是必须要写,但一定要单独一行),指定执行这个脚本的shell程序(也可以用#!/bin/zsh或其他),然后就是堆命令了 。Linux的shell脚本支持很多功能,加上Linux高度模块化的命令,完全可以用shell脚本写出复杂的程序 。
以上只是简单介绍如何开始写shell脚本,如果要写复杂的脚本,还需要深入学习相关知识(如if——fi、case——esac等结构) 。
当然,还需要给脚本加上可执行权限(chmod +x ./file.sh),否则可以用
sh ./file.sh
方式执行脚本(这里的sh是执行脚本所需shell,命令也可以是zsh ./file.sh或其他) 。
建议阅读linux相关书籍 比如说《linux就该这么学》 。
2. 急求帮助,写一个shell脚本,完成下面的要求写一个tomcat的启动脚 准备工作touch /etc/init.d/tomcatchmod +x /etc/init.d/tomcatvi /etc/init.d/tomcat脚本(把下列内容复制到tomcat里面就行):#!/bin/bashstart() { echo -n "Starting Tomcat: " /usr/local/tomcat/bin/startup.sh }stop() { echo -n "Stopping Tomcat: " /usr/local/tomcat/bin/shutdown.sh }# See how we were called.case "$1" in start) start ;; stop) stop ;; status) ;; restart) stopsleep 2 start ;; *)echo "Usage:$0 {start|stop|restart}" ;;esacexit $RETVAL 。
3. 如何编写一个shell脚本 如何编写一个shell脚本 本文结合大量实例阐述如何编写一个shell脚本 。
为什么要进行shell编程 在Linux系统中,虽然有各种各样的图形化接口工具,但是sell仍然是一个非常灵活的工具 。Shell不仅仅是命令的收集,而且是一门非常棒的编程语言 。
您可以通过使用shell使大量的任务自动化,shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务 。下面,让我们一起来看看shell是如何工作的: 建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行shell编程,因为bash是免费的并且很容易使用 。
所以在本文中笔者所提供的脚本都是使用bash(但是在大多数情况下,这些脚本同样可以在bash的大姐,bourne shell中运行) 。如同其他语言一样,通过我们使用任意一种文字编辑器,比如nedit、kedit、emacs、vi 等来编写我们的shell程序 。
程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序 。在这个例子中我们使用/bin/sh来执行程序 。
当编辑好脚本时,如果要执行该脚本,还必须使其可执行 。要使脚本可执行: chmod +x filename 然后,您可以通过输入: ./filename 来执行您的脚本 。
注释 在进行shell编程时,以#开头的句子表示注释,直到这一行的结束 。我们真诚地建议您在程序中使用注释 。
如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理 。变量 在其他编程语言中您必须使用变量 。
在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明 。要赋值给一个变量,您可以这样写: 变量名=值 取出变量值可以加一个美元符号($)在变量前面: #!/bin/sh #对变量赋值: a="hello world" # 现在打印变量a的内容: echo "A is:" echo $a 在您的编辑器中输入以上内容,然后将其保存为一个文件first 。
之后执行chmod +x first 使其可执行,最后输入./first执行该脚本 。这个脚本将会输出: A is: hello world 有时候变量名很容易与其他文字混淆,比如: num=2 echo "this is the $numnd" 这并不会打印出"this is the 2nd",而仅仅打印"this is the ",因为shell会去搜索变量numnd的值,但是这个变量时没有值的 。