በባህሪ ስክሪፕት ውስጥ የሙከራ ሁኔታዎችን እንዴት መጠቀም እንደሚቻል

የሙከራ ትእዛዝ በሊኒክስ የትዕዛዝ መስመሩ ሊገለገልበት ይችላል ነገር ግን አንዱን ነገር ከሌላው ጋር በማነፃፀር ግን በሎጂክ እና ፕሮግራም ፍሰትን የሚቆጣጠኑ የሒሳብ መግለጫዎች ባብዛኛው በ BASH ቅርጽ አጻጻፍ ጽሁፍ ውስጥ ነው .

መሠረታዊ ምሳሌ

የተዘረዘሩትን መስኮት በመክፈት እነዚህን ትዕዛዞች መሞከር ይችላሉ.

1 -eq 2 && echo "yes" || ኢስተር "አይ"

ከላይ ያለው ትእዛዝ እንደሚከተለው ሊሰረዝ ይችላል-

በጥቅሉ, ትዕዛዙ ከ 1 እስከ 2 ጋር በማነፃፀር "አዎ" የሚለው ገደል ላይ "አዎ" የሚል ምልክት ከተገጣጠሙ ጋር እንዲዛመዱ ይደረጋሉ እና "ኖ" የሚለው ቃል "አይ" የሚል ምልክት ከተገጣጠሙ ጋር ካልተጣመሩ ነው.

ቁጥሮችን ማወዳደር

እንደ ቁጥሮችን የሚዳሰሱ ነጥቦችን እያወዳደሩ ከሆኑ የሚከተሉትን የዝውውር ማቀናበሪያዎችን መጠቀም ይችላሉ:

ምሳሌዎች-

1 -eq 2 && echo "yes" || ኢስተር "አይ"

(ለማያ ገጹ "አይ" አይታይም ምክንያቱም 1 እኩል ካልሆነ 2)

ሙከራ 1 -ጌ 2 && echo «አዎ» || ኢስተር "አይ"

(ለማያ ገጹ "አይ" አይታይም ምክንያቱም 1 ከ 2 ያንሳል ወይም እኩል አይደለም)

ሙከራ 1-ግ & 2 echo "አዎ" || ኢስተር "አይ"

(በማያ ገጹ ላይ "አይ" አይመለከተውም ​​ምክንያቱም 1 ከ 2 ያልበለጠ)

ሙከራ 1-ለ 2 እና እና «አዎ» ን ተመልክቷል || ኢስተር "አይ"

(1 "ከ 2 ጋር እኩል ወይም እኩል ስለሆነ ማያውን" አዎ "አሳይቷል)

ሙከራ 1 -lt 2 && እንጠያየው "አዎ" || ኢስተር "አይ"

(1 "ከ 2 ጋር እኩል ወይም እኩል ስለሆነ ማያውን" አዎ "አሳይቷል)

ሞክሩት 1-አና 2 & echo "yes" || ኢስተር "አይ"

(ለማያ ገጹ "አዎ" ያሳያል ምክንያቱም 1 እኩል ካልሆነ 2)

ጽሑፍን በማወዳደር

እንደ ሕብረቁምፊዎች የሚተዋወቁ አባሎችን እያወዳደሩ ከሆኑ የሚከተሉ የማነጻጸር ኦፕሬተሮችን መጠቀም ይችላሉ:

ምሳሌዎች-

ሙከራ "string1" = "string2" && echo "yes" || ኢስተር "አይ"

(ለማያ ገጹ "አይ" አይታይም ምክንያቱም "string 1" "string2" ከሌለው)

ሙከራ "string1"! = "string2" && echo "yes" || ኢስተር "አይ"

(ለማያ ገጹ "አዎ" ይታያል ምክንያቱም "string1" "string2" ከሌለው)

test -n "string1" && echo "yes" || ኢስተር "አይ"

(ለማያ ገጹ "አዎ" አሳይቷል ምክንያቱም "string1" ከዜሮ የሚበልጥ ሕብረቁምፊ)

test -z "string1" && echo "yes" || ኢስተር "አይ"

(ለማያ ገጹ "አይ" አይታይም ምክንያቱም "string1" ከዜሮ የሚበልጥ ሕብረቁምፊ)

ፋይሎችን ማወዳደር

መረጃዎችን እያነጻጸሩ የሚጠቀሙ ከሆነ የሚከተለውን የማነጻጸር ኦፕሬተሮችን መጠቀም ይችላሉ-

ምሳሌዎች-

test / path / to / file1 -n / path / ወደ / file2 && echo "yes"

(ፋይል1 ከፋይል 2 ይበልጥ አዲስ ከሆነ ከሆነ "አዎን" የሚለው ቃል ይታያል)

test -e / path / to / file1 && echo "yes"

("አዎ" የሚለው ፋይል 1 ላይ ካለ 13 የሚታየው ከሆነ)

test -O / path / to / file1 && echo "yes"

(ለፋይል 1 ባለቤት ከሆኑ, "አዎ" የሚለው ቃል ይታያል)

ቃላት ትርጓሜ

በርካታ ሁኔታዎችን በማወዳደር

እስካሁን ድረስ ሁሉም ነገር አንዱን ከሌላው ጋር በማነጻጸር ላይ ነው, ነገር ግን ሁለት ሁኔታዎችን ማነጻጸር ከፈለጉ.

ለምሳሌ, አንድ እንስሳ 4 እግር ያለው እና «oo» ከሆነ, ላም ምናልባት ላም ሊሆን ይችላል. ለ 4 እግሮች መረጋገጥ ብቻ አንድ ላም እንዳላገኙ አያረጋግጥም, ግን በእርግጠኝነት የሚሰማውን ድምጽ ማረጋገጥ ይችላል.

በሁለቱም ሁኔታዎች ሁለቱንም ለመሞከር የሚከተለውን መግለጫ ይጠቀሙ

4 -eq 4 -a "moo" = "moo" && echo "it is a bow" || ድግምት "ላም አልጠጣም"

እዚህ የሚቀርበው ቁልፍ -a የሚለው ሲሆን.

ተመሳሳይ እና ተመሳሳይ የሆነ የመፈተኛ አሰራር ዘዴን የሚጠቀምበት መንገድ እና እንደሚከተለው ነው.

ሞክ 4-eq 4 && test "moo" = "moo" && echo "it's a bow" || ድግምት "ላም አልጠጣም"

ሊያደርጉት የሚሞክሩት ሌላው ፈተና ሁለት አረፍተ ነገሮችን ማወዳደር ነው, እና ሁለቱም ደግሞ ትክክለኛ ሕብረቁምፊ ከሆነ. ለምሳሌ "file1.txt" ወይም "file1.doc" የሚባል ፋይል መኖሩን ማረጋገጥ የሚፈልጉ ከሆነ የሚከተለውን ትዕዛዝ መጠቀም ይችላሉ

test -e file1.txt -o -e file1.doc && echo "file1 exists" || echo "file1 አይገኝም"

እዚህ የሚቀርበው ቁልፍ በ-o ነው ወይም.

ተመሳሳይ እና ተመሳሳይ የሆነ የመፈተኛ አሰራር ዘዴን የሚጠቀምበት መንገድ እና እንደሚከተለው ነው.

test -e ፋይል 1.txt || test -e file1.doc && echo "file1 exists" || echo "file1 አይገኝም"

የሙከራ ቁልፍ ቃልን በማጥፋት ላይ

ይህን ንጽጽር ለመፈተሽ የቃል ቃላት መጠቀም አያስፈልግዎትም. ማድረግ ያለብዎ ነገር ዓረፍተ-ክርስቲያኑን በአዕማድ ቅንፎች ውስጥ እንደሚከተለው ይያዛል-

[-e ፋይል1.txt] && echo "file1 exists" || echo "file1 አይገኝም"

[እና] በመሠረቱ ፍተሻ ማለት ነው.

አሁን እርስዎ እንደሚረዱት ብዙ ሁኔታዎችን በማነፃፀር ላይ ማሻሻል ይችላሉ.

[4 -eq 4] && ["moo" = "moo"] & & echo "it's a bow" || ድግምት "ላም አልጠጣም"

[-e ፋይል1.txt] || [-e ፋይል 1.doc] && echo "file1 exists" || echo "file1 አይገኝም"

ማጠቃለያ

የሙከራ ትዕዛዝ በስክሪፕቶች ውስጥ ይበልጥ ጠቃሚ ነው ምክንያቱም የአንድ ተለዋዋጭ እሴት ዋጋ በሌላው ላይ መሞከር እና የፕሮግራም ፍሰትን መቆጣጠር ይችላሉ. በመደበኛው የትዕዛዝ መስመር ውስጥ ፋይሉ ስለመሆኑ ለመፈተሽ ሊጠቀሙበት ይችላሉ