Linux Shell脚本攻略学习总结:一

来源:互联网 发布:阿里云服务器克隆 编辑:程序博客网 时间:2024/04/30 10:04

终端打印

终端打印的常用命令有两个:echo和print

首先,我先介绍echo

1.echo

echo这个命令接受三种形式的参数,实例如下:

echo "Hello World"echo 'Hello World'echo  Hello World

这三中形式的命令输出的都是同样的结果,但是,每种方法都有它相应的“副作用”

例如如下的结果:


从结果中我们可以看出,以双引号为参数的命令并不能识别标点符号,此时,如果仍使用双引号我们可以加上转义字符,并使用 -e 参数

例如:

echo -e "Hello World \!"

2.print

这个命令需要我们联想C语言中的printf函数,因为它使用的方法和作用是一样的,我们看一个实例

#!/bin/bash #Filename: printf.shprintf  "%-5s %-10s %-4s\n" No Name  Mark printf  "%-5s %-10s %-4.2f\n" 1 Sarath 80.3456 printf  "%-5s %-10s %-4.2f\n" 2 James 90.9989 printf  "%-5s %-10s %-4.2f\n" 3 Jeff 77.564

运行这个实例,我们得到如下的结果



玩转变量

Shell中的变量有如下特点:

1.使用变量并不用声明

2.任何变量的定义方法都是  var=value   注:等号两边不允许有空格

3.任何变量的值都是一个字符串


我们来看一个实例:

#!/bin/bash#Filename : variables.shfruit=applecount=5echo "We have $count $fruit(s)"

输出结果如下:



附:我们可以通过相应的方法获取变量值的长度:

length=${#var}

例如:



字段分隔符

IFS(内部字段分隔符)是Shell脚本中的一个重要概念。在处理文本数据时,相当有用。内部字段分隔符是用于特定用途的定界符。IFS是存储定界符的环境变量。它是当前shell环境使用的默认定界字符串。

实例如下:

#!/bin/bash#passwd_line.sh#Description: Illustration of IFSline="root:x:0:0:root:/root:/bin/bash" oldIFS=$IFS; IFS=":" count=0; for item in $line; do [ $count -eq 0 ]  && user=$item; [ $count -eq 6 ]  && shell=$item; let count++ done; IFS=$oldIFS echo $user\'s shell is $shell;

运行结果如下:


原创粉丝点击