Linux Shell笔记之输入与输出

一、获取输入
1.命令行参数
#!/bin/bash
name=`basename $0`                       $0参数获取shell在命令行启动的程序的名字,basename命令去掉路径
echo "current command is $name"
if [ -n "$1" ] && [ -n "$2" ]            $1、$2分别代表第一个参数与第二个参数,第9个变量后,需加花括号
then                                     如${10},-n判断参数是否非空
   sum=$[ $1 + $2 ]
   echo "$1+$2=$sum"
else
   echo "please input two number"
fi

[root@localhost hunterno4]# ./add 3 4    参数若含空格需加引号
current command is add
3+4=7

2.特殊参数变量
1)$#
#!/bin/bash
param=$#
echo "total parameter is $#"            脚本运行时命令行参数的个数
echo "the last parameter is ${!#}"      不能在花括号内使用美元符,需要换成!号

2)$*与$@
#!/bin/bash
count=1
for param in "$*"
do 
   echo "\$* parameter-- $param"
done

for param in "$@"
do 
   echo "\$@ parameter-- $param"
done

# ./param one two three
$* parameter-- one two three             $*将命令行中的所有参数当单个单词保存
$@ parameter-- one                       $@将命令行中的所有参数当同一字符串中的多个独立的单词
$@ parameter-- two
$@ parameter-- three

3.移动变量
#!/bin/bash
count=1
while [ -n "$1" ]
do 
   echo "current \$1 is $1"
   count=$[ $count + 1 ]
   shift                                 使用shift命令,默认情况每个参数变量减一,shift n 则移n位
done  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值