bash脚本 while语法

基本语法(比较常见的两种形式):

只要特定条件为真,”while” 语句就会执行

while [ condition ]
do
   command1
   command2
   command3
done

或者

while [ condition ]; do
   command1
   command2
   command3
done

说明:

 行1,首先进行条件测试,如果传回值为0(条件测试为真),则进入循环,执行命令区域,否则

不进入循环,介绍while 命令

 行3,执行命令区域,这些命令中,应该要有改变条件测试的命令,这样,才有机会在

有限步骤后结束执行while循环(除非想要执行无穷循环)。

 行4,回到行1,执行while命令

注:在编写脚本时,一定要注意空格

condition为true时命令1到命令3将会一直执行,知道条件为false ,例如:

#!/bin/bash
x=1
while [ $x -le 5 ]
do
  echo "Welcome $x times"
  x=$(( $x + 1 ))
done

读取输入:

while read line  
do  
    echo $line  
done  

while循环,经典的用法是搭配转向输入,读取文件的内容,做法如下:

#!/bin/bash 
while read line
do
  echo $line
done < /home/joshua/testfile

说明:

 行2,使用read有标准输入读取数据,放入变量line中,如果读到的数据非空,就进入循环。

 行4,把改行数据显示出来

 行5,将/home/joshua/testfile的内容转向输入将给read读取。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏coding for love

在线商城项目08-数据库创建和商品集合的创建

因为six_tao中没有任何内容。我们需要为其创建一个集合或者插入文档,数据库才会显示。例如:

774
来自专栏Java后端技术栈

Java多线程编程-(1)-线程安全和锁Synchronized概念

(1)在传统的操作系统中,程序并不能独立运行,作为资源分配和独立运行的基本单位都是进程。

843
来自专栏Phoenix的Android之旅

关于volatile的坑

Java的面试基础问题中,经常出现并发相关的问题。比如volatile关键字,是出现频率相当高的一个问题。 如果说volatile和synchronized的区...

673
来自专栏Golang语言社区

Go语言基于共享变量的并发

一个特定类型的方法和操作函数是并发安全的,那么所有它的访问方法和操作都是并发安全的。导出包级别的函数一般情况下都是并发安全的,package级的变量没法被限制在...

41611
来自专栏Golang语言社区

Go语言基于共享变量的并发

一个特定类型的方法和操作函数是并发安全的,那么所有它的访问方法和操作都是并发安全的。导出包级别的函数一般情况下都是并发安全的,package级的变量没法被限制在...

3864
来自专栏深度学习自然语言处理

实例快速上手shell脚本

昨天老师给了宗林师兄任务,让我跑一个机器翻译的程序。我看了看就是跑shell脚本。刚开始一看。。我的天。。好长的代码,但是觉得这个时候就更不能怕,得迎难而上,趁...

3749
来自专栏IT技术精选文摘

Java多线程知识小抄集(三)

51. SimpleDateFormat非线程安全 当多个线程共享一个SimpleDateFormat实例的时候,就会出现难以预料的异常。 主要原因是parse...

2136
来自专栏Albert陈凯

2018-08-02 IntelliJ IDEA - Debug 调试多线程程序IntelliJ IDEA - Debug 调试多线程程序

https://blog.csdn.net/nextyu/article/details/79039566

1842
来自专栏Python学习心得

Python爬虫--- 1.1请求库的安装与使用

原文链接:https://www.fkomm.cn/article/2018/7/16/16.html

820
来自专栏C++

python笔记:#002#第一个python程序

1194

扫码关注云+社区

领取腾讯云代金券