shell 的 功能语句--1

【1】说明性语句
    (1)shell 程序和语句
	 shell 程序由零或多条shell语句构成。 shell语句包括三类:说明性语句、功能性语句和结构性语句。
	 说明性语句:
		以#号开始到该行结束,不被解释执行
	 功能性语句:
		任意的shell命令、用户程序或其它shell程序。
	 结构性语句:
		条件测试语句、多路分支语句、循环语句、循环控制语句等。
    (2)说明性语句(注释行)
	    注释行可以出现在程序中的任何位置,既可以单独占用一行,  也可以接在执行语句的后面.
	 以#号开始到所在行的行尾部分,都不被解释执行. 例如:
		#! /bin/sh
		#	     ------> 告诉OS用哪种类型的shell来解释执行该程序
		# 本程序说明
		#
		command_1
		command_2                  # command_2的语句说明
		……
		# 下面程序段的说明
		command_m
		……
		command_n                  # commandn_语句的说明
		……

  因为shell里面的变量是没有类型的,因此输出多个变量也是可以的。

   变量尽量用大写

   第一行注释决定了你是使用哪一种shell来解释

如果有多个变量的情况下

【2】常用功能性语句
     (1) 常用功能性语句(命令)
    read从标准输入读入一行, 并赋值给后面的变量,其语法为:
               read  var
        把读入的数据全部赋给var
              read  var1  var2  var3
        把读入行中的第一个单词(word)赋给var1, 第二个单词赋给var2, ……把其余所有的词赋给最后一个变量.
    如果执行read语句时标准输入无数据, 则程序在此停留等侯, 直到数据的到来或被终止运行。
     (2) 应用实例
     # example1  for  read
     echo  "Input  your  name: \c"
     read  username
     echo  "Your name is  $username"

     #example2  for  read
     echo "Input  date  with  format  yyyy  mm dd: \c"
     read  year  month  day
     echo  "Today  is  $year/$month/$day,  right?"
     echo  "Press  enter  to  confirm  and  continue\c"
     read  answer
     echo "I  know  the  date,  bye!"

结果如下:如果多输入的话,就会把多输入的放到最后面的一个变量

关于换行,在选择不同的、bin/sh 和bin/bash 的情况是选择-n 或者/c的,不一样的

原文地址:https://www.cnblogs.com/jack-hzm/p/10165548.html

时间: 2024-10-26 13:46:32

shell 的 功能语句--1的相关文章

Linux中的shell脚本编程---语句控制

概述: shell脚本的语句控制 □前面提到了过程式编程语言有三种过程: 顺序执行:按照顺序一条一条语句执行: 选择执行:按照条件进行选择执行: 循环执行:按照给定的循环条件进行循环执行. □其中,顺序不需要特定的控制,只需按照语句依次执行即可:选择执行,则需要特定的控制语句(如:if,case)来判断执行:循环执行则需要特定的循环控制控制(如:for,while等). 一.使用read 命令来接受输入 □在bash脚本编程过程当中有时程序需要与用户之间进行交互,如提示用户输入一些参数等,此时,

(九)shell中case语句、程序传参、while

2.2.6.1.case语句(1)shell中的case语句和C语言中的switch case语句作用一样,格式有差异(2)shell中的case语句天生没有break,也不需要break,和C语言中的switch case不同.shell中的case默认就是匹配上哪个执行哪个,不会说执行完了还去执行后面的其他case(就好像shell中的case语言默认都带了break). 2.2.6.2.调用shell程序的传参(1)C语言中可以通过main函数的argc和argv给程序传参(详情参考<4.

[Shell]Shell基本功能:历史命令 &amp; 别名

-------------------------------------------------------------------------------------------------------- 一. 历史命令 history    #查看历史命令 history -c #清空历史命令 history -w #不等退出,直接把缓存中的历史命令写入历史命令保存文件-/.bash_history vim /etc/profile  #默认历史命令保存1000条,可修改HISTSIZE保

[Shell]Shell基本功能:输入输出重定向

/*----------------------------------------------------------------------------------------------- @黑眼诗人 <www.chenwei.ws> -----------------------------------------------------------------------------------------------*/ 输入输出重定向的作用: 输出重定向就是把命令的执行结果保存到

shell条件测试语句实例-测试apache是否开启

终于理解了shell条件测试语句”!=“和"-n"的用法区别,于是有了如下的shell脚本,做为练习. 第一种方法:测试apache是否开启?字符串测试 #!/bin/bash # www.jquerycn.cn web=`/usr/bin/pgrep httpd` if [ -n "$web" ]; //$web返回值是否为空 then echo "httpd is running" else /etc/init.d/httpd start f

Shell case in语句详解

和其它编程语言类似,Shell 也支持两种分支结构(选择结构),分别是 if else 语句和 case in 语句.在<Shell if else>一节中我们讲解了 if else 语句的用法,这节我们就来讲解 case in 语句. 当分支较多,并且判断条件比较简单时,使用 case in 语句就比较方便了. <Shell if else>一节的最后给出了一个例子,就是输入一个整数,输出该整数对应的星期几的英文表示,这节我们就用 case in 语句来重写代码,如下所示. #!

Shell 编程 条件语句

本篇主要写一些shell脚本条件语句的使用. 条件测试 test 条件表达式 [ 条件表达式 ] 文件测试 -d:测试是否为目录(Directory). -e:测试文件或目录是否存在(Exist). -f:测试是否为文件(File). -r:测试当前用户是否有权限读取(Read). -w:测试当前用户是否有权限写入(Write). -x:测试是否设置有可执行权限(Excute). -nt:判断文件A是否比文件B新. -ot:判断文件A是否比文件B旧. -ef:判断两个文件是否为同一个文件,用来判

Shell 编程 循环语句

本篇主要写一些shell脚本循环语句的使用. for 循环 指定次数 #!/bin/bash for ((i=1;i<=10;i++)) do echo $i done [[email protected] ~]# vim num.sh [[email protected] ~]# chmod +x num.sh [[email protected] ~]# ./num.sh 1 2 3 4 5 6 7 8 9 10 遍历循环 #!/bin/bash TMP=$(cat username.txt

Shell 编程 case语句

本篇主要写一些shell脚本条件语句的使用. 条件测试 test 条件表达式 [ 条件表达式 ] 文件测试 -d:测试是否为目录(Directory). -e:测试文件或目录是否存在(Exist). -f:测试是否为文件(File). -r:测试当前用户是否有权限读取(Read). -w:测试当前用户是否有权限写入(Write). -x:测试是否设置有可执行权限(Excute). -nt:判断文件A是否比文件B新. -ot:判断文件A是否比文件B旧. -ef:判断两个文件是否为同一个文件,用来判