十年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
      南昌百恒網(wǎng)絡(luò)微信公眾號 掃一掃關(guān)注
      小程序
      tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
      掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
      掃一掃打開百恒網(wǎng)絡(luò)微信小程序

      百恒網(wǎng)絡(luò)

      南昌百恒網(wǎng)絡(luò)

      如何在bash shell腳本中使用C語言風(fēng)格的for命令?

      百恒網(wǎng)絡(luò) 2017-08-22 6468

      如果您從事過C語言編程方面的工作,那么您可能會對bash shell中for命令的工作方式有點(diǎn)驚奇。在C語言中, for循環(huán)通常定義一個變量,然后這個變量會在每次迭代時自動改變。通常程序員會將這個變量用作計數(shù)器,并在每次迭代中讓計數(shù)器增一或減一。bash的for命令也提供了這個功能。今天,南昌網(wǎng)絡(luò)公司小編重點(diǎn)教大家如何在bash shell腳本中使用C語言風(fēng)格的for命令,下面就一起跟隨小編的步伐來看看!

      C語言的for命令有一個用來指明變量的特定方法,一個必須保持成立才能繼續(xù)迭代的條件, 以及另一個在每個迭代中改變變量的方法。當(dāng)指定的條件不成立時,for循環(huán)就會停止。條件等式通過標(biāo)準(zhǔn)的數(shù)學(xué)符號定義。比如,考慮下面的C語言代碼:

      for (i = 0; i < 10; i++)

      {

      printf("The next number is %dn", i);

      }

      這段代碼產(chǎn)生了一個簡單的迭代循環(huán),其中變量i作為計數(shù)器。第一部分將一個默認(rèn)值賦給該變量。中間的部分定義了循環(huán)重復(fù)的條件。當(dāng)定義的條件不成立時,for循環(huán)就停止迭代。 后一部分定義了迭代的過程。在每次迭代之后,后一部分中定義的表達(dá)式會被執(zhí)行。在本例中,i變量會在每次迭代后增一。

      bash shell也支持一種for循環(huán),它看起來跟C語言風(fēng)格的for循環(huán)類似,但有一些細(xì)微的不同,其中包括一些讓shell腳本程序員困惑的東西。以下是bash中C語言風(fēng)格的for循環(huán)的基本格式。

      for (( variable assignment ; condition ; iteration process ))

      C語言風(fēng)格的for循環(huán)的格式會讓bash shell腳本程序員摸不著頭腦,因為它使用了C語言風(fēng)格的變量引用方式而不是shell風(fēng)格的變量引用方式。C語言風(fēng)格的for命令看起來如下:

      for (( a = 1; a < 10; a++ ))

      注意,有些部分并沒有遵循bash shell標(biāo)準(zhǔn)的for命令:

      1、變量賦值可以有空格;

      2、條件中的變量不以美元符開頭;

      3、迭代過程的算式未用expr命令格式。

      shell開發(fā)人員創(chuàng)建了這種格式以更貼切地模仿C語言風(fēng)格的for命令。這雖然對C語言程序員來說很好,但也會把專家級的shell程序員弄得一頭霧水。在腳本中使用C語言風(fēng)格的for循環(huán)時要小心。

      以下是在bash shell程序中使用C語言風(fēng)格的for命令的一個例子,大家認(rèn)真看一下:

      $ cat test8

      #!/bin/bash

      # testing the C-style for loop

      for (( i=1; i <= 10; i++ ))

      do

      echo "The next number is $i"

      done

      $ ./test8

      The next number is 1

      The next number is 2

      The next number is 3

      The next number is 4

      The next number is 5

      The next number is 6

      The next number is 7

      The next number is 8

      The next number is 9

      The next number is 10

      $

      for循環(huán)通過定義好的變量(本例中是變量i)來迭代執(zhí)行這些命令。在每次迭代中,$i變量包含了for循環(huán)中賦予的值。在每次迭代后,循環(huán)的迭代過程會作用在變量上,在本例中,變量增一。

      以上就是南昌網(wǎng)絡(luò)公司小編為大家介紹的如何在bash shell腳本中使用C語言風(fēng)格的for命令的方法,是不是感覺很簡單呢?如果大家還有哪些不明白的地方,可隨時來電和我們聯(lián)系,百恒專業(yè)為您解答!


      400-680-9298,0791-88117053
      掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
      掃一掃打開百恒網(wǎng)絡(luò)小程序

      歡迎您的光顧,我們將竭誠為您服務(wù)×

      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售前咨詢 售前咨詢
       
      售后服務(wù) 售后服務(wù)
       
      售后服務(wù) 售后服務(wù)
       
      備案專線 備案專線
       
      ×
      99精品一区二区三区| 久久精品成人免费观看| AV天堂午夜精品一区二区三区| 久久er99热精品一区二区| 国产精品无码无在线观看| 精品午夜国产人人福利| 亚洲AV无码成人精品区狼人影院| 国产亚洲精品a在线观看| 精品国产日韩亚洲一区在线| 久久精品国产亚洲AV忘忧草18| 久久精品国产一区二区三区日韩| 久久这里只有精品视频99| 国产视频精品免费| 一本色道久久88亚洲精品综合| 久久精品无码一区二区三区| 国产精品主播一区二区| 精品特级一级毛片免费观看| 国产精品揄拍一区二区| 国产一区二区三精品久久久无广告| 日本精品一区二区三区四区| 亚洲精品日韩中文字幕久久久| 国产午夜亚洲精品不卡免下载| 3d动漫精品一区视频在线观看| 久久久久免费精品国产小说| 久久精品亚洲综合专区| 国产suv精品一区二区33| 国产精品熟女高潮视频| 国产亚洲精品一品区99热| 中文字幕精品一区二区精品| 久久综合精品国产一区二区三区 | 国产精品香蕉在线观看不卡| 国产精品日韩欧美一区二区三区| 久久久亚洲精品无码| 久久精品中文字幕免费| 久久久久成人精品免费播放动漫| 熟妇人妻VA精品中文字幕| 杨幂国产精品福利在线观看| 色欲精品国产一区二区三区AV| 99re在线这里只有精品免费| 91精品久久久久久久久中文字幕| 2022国产成人精品福利网站 |