写一个 程序名为    test.sh    可带参数为 start 和 stop

执行  test.sh start
执行  start 内容的代码

执行 test.sh stop

执行 stop 内容的代码

#!/bin/bash
if [ $1 == "start" ]
  then   
  echo "do start"
  command groups
  elif [ $1 == "stop" ]
  then
  echo "do stop"
  command group
  else
  echo "Please make sure the positon variable is start or stop."
fi

自变量的接收
接收来自命令行传入的参数,第一个参数用$1表示,第二个参数$2表示,。。。以此类推。注意:$0表示脚本文件名。另外一个在shell编程中经常用到 的是“$@”这个代表所有的参数,。你可以用一个循环来遍历这个参数。如果用java来类比的话,可以把$@看作是man函数中定义的那个数组

for examples:

bash里的语句总是那么的人性化,十分的接近自然语言,在for语句中几乎可以迭代任何类似与集合的数据类型(或许这样个说法不对,但我确实想不到更好的词来代替)。
看一个例子:
#!/bin/bash
for args in $@
do
        echo $args
done

把上面这段代码录入保存为showargs.sh设置为可执行(chmod +x showargs.sh)执行:

$ ./showargs.sh arg1 arg2 arg3 arg4
arg1
arg2
arg3
arg4
这个例子中,我们用到了之“$@”,它代表了所有的命令行参数。在这里用for对其进行遍历,系统迭代地从$@中取出命令行参数把他放到args中,最后使用echo $args进行输出。
for更经常用到的是遍历目录,下面的例子用于列出当前目录下的所有文件和文件夹的名称
$ for file in *
> do
> echo $file
> done
这里用*代表当前目录,列出的是所有的文件和文件夹的名称,在这里,文件夹和文件你是分不出来的,如果你需要,你应该用if [-d ${file}]来做一下判断。
对于文件遍历,更有趣的是,你可以在 “in” 后面接上多个表达式。也就是说,你可以一次在遍历多个目录。
下面这段代码能把当前目录下go文件夹和do文件夹里的文件复制到fo文件夹下
#!/bin/bash
for args in ./go/* ./do/*
do
  cp ${args} ./fo
  echo "copying ${args} to ./fo/${args}"
done

最新文章

  1. ubuntu下更改鼠标移动速度
  2. iOS 类微信语音播放之切换听筒和扬声器的方法解决方案
  3. Cron 表达式详解和案例
  4. 搭建SpringMVC+MyBatis开发框架一
  5. 什么是 docker?
  6. Git 如何回到过去,然后 再 回到将来
  7. frameset导航框架
  8. nginx常用配置系列-HTTPS配置
  9. 一大波jQuery事件即将来袭!
  10. opensslBIO系列之2---BIO结构和BIO相关文件介绍
  11. SpringBoot(四)之thymeleaf的使用
  12. CF444(Div. 1简单题解)
  13. centos7离线安装rpm包自动解决依赖
  14. c++并行计算库TBB和PPL的基本用法
  15. 8.4 Java 命名规范
  16. 高并发第十三弹:J.U.C 队列 SynchronousQueue.ArrayBlockingQueue.LinkedBlockingQueue.LinkedTransferQueue
  17. 产品相关 细说软件产品和业务 & 业务过程(流程) & 业务逻辑
  18. 使用ShareSDK完成第三方(QQ、微信、微博)登录和分享
  19. idea 使用 git打成jar包到 nexus
  20. CC 攻击检测研究现状

热门文章

  1. IT人经济思维之创业 - 创业与投资系列文章
  2. 多行图片hover加边框兼容IE7+
  3. 浅谈iptables防SYN Flood攻击和CC攻击
  4. SQL周、日、月、年数据统计
  5. linux命令之tail
  6. 【Windows编程】系列第十一篇:多文档界面框架
  7. JSCH通过密钥文件进行远程访问
  8. Linux终端打印命令使用介绍
  9. Windows 10 装机回忆录
  10. P1774 最接近神的人_NOI导刊2010[树状数组 逆序对 离散化]