Bii o ṣe le Lo Bireki ati Tẹsiwaju Awọn alaye ni Awọn iwe afọwọkọ Shell


Ninu àpilẹkọ yii, a yoo wo bi a ṣe le lo adehun ati tẹsiwaju ninu awọn iwe afọwọkọ bash. Ni bash, a ni awọn ikole lupu akọkọ mẹta (fun, lakoko, titi di). Fọ ki o tẹsiwaju awọn alaye jẹ ipilẹ ti a kọ ati lo lati paarọ iṣan ti awọn losiwajulosehin rẹ. Erongba yii ti adehun ati tẹsiwaju wa ni awọn ede siseto olokiki bi Python.

$ type -a break continue

Jade lupu pẹlu Gbólóhùn Bireki kan

Alaye adehun naa yoo jade kuro ni lupu ati pe iṣakoso ti kọja si alaye ti o tẹle ni lupu. O le ṣiṣe aṣẹ iranlọwọ lati gba diẹ ninu alaye nipa alaye adehun.

$ help break

Awọn ipilẹ sintasi ti Bireki.

$ break [n]

n is optional

Wo apẹẹrẹ isalẹ. Eyi jẹ ohun rọrun fun lupu ti o ṣe ifasẹyin lori ọpọlọpọ awọn iye lati 1 si 20 ni igbesẹ afikun ti 2. Gbólóhùn majemu yoo ṣe ayẹwo ikosile ati nigbati o jẹ otitọ ($val = 9) lẹhinna o yoo ṣiṣe alaye fifọ ati lupu yoo fopin si fifin awọn aṣetọju ti o ku.

#!/usr/bin/bash

for val in {1..20..2}
do
  If [[ $val -eq 9 ]]
  then
     break
  else
  echo "printing ${val}"
fi
done

Rekọja Iteration kan pẹlu Gbólóhùn tẹsiwaju

Kini ti o ko ba fẹ lati jade kuro ni lupu ṣugbọn foju idina ti koodu nigbati ipo kan ba pade? Eyi le ṣee ṣe pẹlu alaye tẹsiwaju. Alaye ti o tẹsiwaju yoo foju ipaniyan ti Àkọsílẹ koodu nigbati ipo kan ba pade ati pe iṣakoso ti kọja pada si alaye lupu fun aṣetunṣe atẹle

Lati wọle si iranlọwọ.

$ help continue

Wo apẹẹrẹ isalẹ. Eyi jẹ apẹẹrẹ kanna ti a lo lati ṣe afihan alaye adehun. Bayi nigbati a ba ṣe ayẹwo Val si mẹsan lẹhinna alaye itesiwaju yoo foju gbogbo awọn bulọọki ti o ku ti koodu ki o kọja iṣakoso si fun lupu fun aṣetunṣe atẹle.

#!/usr/bin/bash

for val in {1..20..2}
do
  If [[ $val -eq 9 ]]
  then
      continue
  fi
  echo "printing ${val}"
done

Ti o ba mọ python lẹhinna fọ ati tẹsiwaju ihuwasi jẹ kanna ni Python paapaa. Ṣugbọn Python pese alaye iṣakoso lupu diẹ sii ti a pe ni igbasilẹ.

Pass jẹ bi ọrọ asan ati pe onitumọ yoo ka a ṣugbọn kii yoo ṣe iṣẹ kankan. O kan awọn abajade ni iṣẹ kankan. Bash ko pese alaye ti o jọra ṣugbọn a le ṣafarawe ihuwasi yii nipa lilo ọrọ otitọ tabi ọgangan (:). Otitọ ati oluṣafihan jẹ ikarahun ti a kọ ati pe ko ṣe iṣẹ kankan.

$ type -a : true

Wo apẹẹrẹ isalẹ. Nigbati a ba ṣe agbeyẹwo alaye ipo iṣe lati jẹ otitọ ($val = 9) lẹhinna alaye otitọ ko ni ṣe nkankan ati pe lupu yoo tẹsiwaju.

#!/usr/bin/bash

for val in {1..20..2}
do
  If [[ $val -eq 9 ]]
  then
      true
  fi
  echo "printing ${val}"
done

Iyẹn ni fun nkan yii. A yoo nifẹ lati gbọ esi rẹ ti o niyelori ati eyikeyi awọn imọran ti o ni.