ካረካኩ በኋላ መስፈርቶች ምዕራፍ bash ስክሪፕቶችን ማሄድ መቻል፣ እና ተረዱ ተግባራትን እንዴት እንደሚገልጹ፣ እንዴት እንደሆነ ይማሩ በባሽ ተግባራት ውስጥ እሴቶችን ይመልሱ. ለዚህም ትንሽ ‹ash――――› ፕሮግራም በባሽ ውስጥ እንፈጥራለን የዲኤንአይአይ ፊደላትን ያስሉ. እኔ ጥሩ ዜና አለኝ-ባሽም ይችላል በዊንዶውስ 10 ላይ ይጫናል. በስርዓተ ክወናዎች ውስጥ ሁሉንም የሊኑክስ ኃይል በምን ሊጨምር ይችላል ፣ እንበል ... የተለየ ፡፡
በመጀመሪያ እኛ ማድረግ አለብን እንዴት እንደሆነ ይረዱ ተተካ፣ እንደማንኛውም ቋንቋ የመቻል እድሉ ያለው የሕብረቁምፊ ክፍሎችን ይመልሱ ከሰንሰለቱ አመላካች ፣ የቦታው አቀማመጥ እና ርዝመት ፡፡ የዚህን ባህሪ ምሳሌ እንመልከት ፡፡ ስክሪፕታችንን የምንፈጠረው በ
$ touch prueba_substring $
ከዚያ ከሚወዱት አርታኢ ጋር የሚከተለውን ኮድ እንጨምራለን። በተርሚናል ሞድ ውስጥ የእኔ ተመራጭ አርታኢ ተስተካክሏል. ግን በቅርብ ጊዜ ናኖ ጥንካሬ እያገኘ መሆኑን አይቻለሁ ፡፡
#!/usr/bin/env bash # Demo comportamiento de substrings en Bash # Pedro Ruiz Hidalgo # version 1.0.0 # Febrero 2017 ret="\n" CADENA="siempre uso Linux con Ubuntu y Ubunlog, claro!" # "0123456789012345678901234567890123456789012345" # " 1 2 3 4 " # (usa la regla para medir los caracteres) echo -e $ret ${CADENA:12} echo -e $ret ${CADENA:12:5} echo -e $ret "Aprendo en ${CADENA:31:7}" exit 0
ፈቃዶቹን ማከል እና እንደዚህ ማከናወን-
$ chmod +x prueba_substring $ ./prueba_substring $
ሁሉም ነገር በጥሩ ሁኔታ ከሄደ የሚከተለውን ውጤት መመለስ አለበት
Linux Con Ubuntu y Ubunlog, claro! Linux Aprendo en Ubunlog
ንዑስ መስመር ክዋኔ
ከላይ እንደሚመለከቱት ከ 13 እስከ 15 ያሉትን መስመሮች አጉልቻለሁ ከስክሪፕቱ እና ደረጃ ወደ ኮድዎን ያብራሩ. የገደል ማሚቶ ጋር መለኪያ "-e" እንድናሳይ ያስችለናል የሚቀጥለው መስመር ቁምፊ፣ ይህንን ባህሪ በ መስመር 7 እና ለተለዋጭ «ret» ተመደበ.
መስመር 13: መሰኪያውን አሳየዋለሁ (በመተካት) በ CHAIN ተለዋዋጭ ፣ በመስመር 8 ላይ ተገልጻል ፣ ከቦታ 12. ሁልጊዜ ከቦታ ቦታ 0 ለመቁጠር ይጀምራል.
መስመር 14: ከ የ “CHAIN” ተለዋዋጭ አቀማመጥ 12 ፣ የ 5 ክፍልን አሳያለሁ. እርስዎ እንደሚያረጋግጡት ይህ ከ ‹ይዛመዳል› "ሊነክስ".
መስመር 15-ሀን እጽፋለሁ በጥቅስ ውስጥ የተዘጉ አዲስ ሕብረቁምፊዎች በ “CHAIN” ተለዋዋጭ ንዑስ ክፍል ለመቀጠል ‹በ ውስጥ እማራለሁ› ብዬ እጀምራለሁ የ 31 ክፍልን በመያዝ ከቦታ 7ይህ ይዛመዳል "ኡቡንሎግ".
የመልሶ ማቋቋም ተግባራት
ከባሽ ጋር የመመለሻ ዘዴው የሚወጣው በ “ተመላሽ” ትዕዛዝ ነው ፣ ምንም እንኳን ከባሽ ተለዋዋጭ ጋር ማመሳሰል ሲኖርብን እርስዎ ሊለመዱት የሚገባውን “እንግዳ” ዘዴን ይተገበራል። እስቲ የሚከተለውን ምሳሌ እንመልከት-
#!/usr/bin/env bash function suma(){ local a=$1 local b=$2 return $(( $a + $b )) } suma 12 23 retorno=$? echo $retorno
ተግባራት በባሽ ውስጥ ከመጠቀምዎ በፊት ሁል ጊዜ መገለጽ አለባቸውስለዚህ ፣ ከ banባንግ የተግባር ድምርን እናሳውቃለን ፣ በመስመር 4 ላይ እኛ የምንለካው በ ‹አካባቢያዊ› የመጀመሪያዎቹ መለኪያዎች ምደባ ነው ($ 1) ወደ ተለዋጭ “ሀ”። መስመር 5 ላይ ተመሳሳይ አሰራር ፣ የት ሁለተኛውን መለኪያ ሀ ($ 2) ለተለዋጭ «ቢ» እንመድባለን. በመስመር ዘጠኝ ውስጥ የደመወዝ ተግባሩን በ ውስጥ በተገለጸው ዘዴ በሚለወጡ ሁለት መለኪያዎች እንጠራዋለን ተለዋዋጮች “ሀ” እና “ለ” እና ከ “መመለስ” ጋር ታክለን እንመልሳቸዋለን, በተግባር መመሪያዎች ውስጥ በቀላሉ እንደሚታየው.
ተለዋዋጭውን “ተመላሽ” በ ውስጥ እንመድባለን የተግባር ድምር አፈፃፀም ውጤት መስመር 10.
በየትኛው መንገድ ላይ ጥናት ካደረጉ እና ከተረዱ በኋላ የእሴቶች ተመላሾች እና ለተለዋጮች የተሰጠው ሥራ ላይ ይውላል የኛን መርሃግብር ለማየት እንሂድ የ የዲኤንአይ ፊደላትን ከባሽ ጋር ማስላት.
የዲኤንአይ ፊደሎችን ከባሽ ጋር ለማስላት ስክሪፕት
#!/usr/bin/env bash nl="\n" LETRAS="TRWAGMYFPDXBNJZSQVHLCKEO" NORMAL=0 ERROR=66 if [ $# -lt 1 ]; then echo -e "$nl Cálculo DNI, introduce número$nl" read -r ndni [ -z "${ndni//[0-9]}" ] && [ -n "$ndni" ] || echo "Sólo números" && exit $ERROR else ndni=$1 fi modulo () { return $(( $ndni % 23 )) } modulo ndni mod=$? echo $ndni-${LETRAS:$mod:1} exit $NORMAL
La የዲ ኤንአይአችን ደብዳቤ ከ ... ጋር ይዛመዳል ቁጥር ሞዱል 23. ይህ ነው, ቁጥሩን በ 23 እንከፍለዋለን y ባለአደራውን ከመመልከት ይልቅ የቀረውን ክፍል እናከብራለን. ሌሎቹ ቃላት, እንደ በ 23 የሚከፈሉ ቁጥሮች ዜሮ ይሰጣሉ፣ የሚል ደብዳቤ ከእሱ ጋር ይዛመዳል «ቲ»፣ ከዚህ ጀምሮ አቀማመጥ 0 ነው፣ ከላይ ባለው ጽሑፍ ውስጥ እንዳየነው ፣ ሁሉም ማያያዣዎች ከዜሮ መቁጠር ይጀምራሉ. ያም ማለት በሞጁሉ ሁልጊዜ ቁጥሮች እናገኛለን በ 0 (ፊደል "ቲ") እና በ 22 (ፊደል "ኦ") መካከል. እንደ ሌሎች ቋንቋዎች ሁሉ በባሽ ውስጥ ሞጁሉ የሚገኘው በፐርሰንት ኦፕሬተር «%» አማካይነት ነው.
በ መስመር 5 ፊደላትን እንገልፃለን በትእዛዝዎ ግልጽ ነው ፣ ትዕዛዙ ሊለወጥ አይችልም ለአስተማማኝ ውጤቶች ፡፡ በመስመሩ ውስጥ 9 ብለን እየጠየቅን ነው ስክሪፕቱን ሲደውሉ ቁጥር እንደ ልኬት ቢሆን ኖሮ. መለኪያው ከሌለ ከ 11 እስከ 13 ባለው መስመር ላይ ባለው መመሪያ በቁልፍ ሰሌዳ እንጠይቃለን ፣ በመስመሩ 15 ላይ ያለውን ቅደም ተከተል ለማስላት ስክሪፕቱ ከቁጥር ጋር ከተጠራ ይህን ልኬት ለተለዋጭ «ndni» ይመድቡ።
በመስመር 23 ውስጥ በ ‹ግቤት› በኩል የሞዱሎውን ተግባር እንጠቅሳለን ተለዋዋጭ «ndni» ፣ ወይ በባሽ ውስጥ እንደ መለኪያ ወይም በቁልፍ ሰሌዳ እንደ ግብዓት ተሰብስቧል. በመስመር 24 ውስጥ የተግባሩ መመለስ ለተለዋጭ «ሞድ» ተመድቧል። በ 25 ሜትር መስመር ላይእንደ ሞጁሉ እና በሰሌዳው ስሌት መሠረት ቁጥሩን ፣ ሰረዝን እና ከቦታው ጋር የሚስማማውን ፊደል እናሳያለን.
የእኛን የዲኤንአይ ስክሪፕት በመሞከር ላይ
$ ./dni 12345678 12345678-Z
ደህና ፣
$ ./dni Cálculo DNI, Introduce número
ሁሉም እስክሪፕቶቻችን ለ “ደራሲው“ -a ”እና ሌላ“ -h ”ን ለእገዛ እና ለአገባብ ማካተት አለባቸው። ቀደም ባሉት መጣጥፎች ላይ እንዳየነው ወይም ኮዱን የበለጠ ከባድ እንዳይሆን ለማድረግ እተወዋለሁ ፡፡
ይህ ጽሑፍ ለእርስዎ ፍላጎት እንደነበረ ተስፋ እና ተስፋ አደርጋለሁ ፡፡
4 አስተያየቶች ፣ ያንተን ተወው
ጤና ይስጥልኝ አንድ ሰው ሊረዳኝ ይችላል lubuntu ን ወደ ቀድሞ ዴስክቶፕዬ መጫን ያስፈልገኛል ነገር ግን በዩኤስቢ እንድጭን አይፈቅድልኝም እና የዲቪዲ ድራይቭ ተበላሽቷል እኔ መጫን እፈልጋለሁ ፡፡ http://www.plop.at ወደ ኡቡንቱ 16.04 LTS ግን እንዴት እንደማደርገው አላውቅም ፡፡ አመሰግናለሁ
ኦማር,
እርስዎ እንዳመለከቱት ሁኔታው በጣም ተስፋ ሰጪ አይደለም-ዩኤስቢ አይፈቀድም እና የዲቪዲ ድራይቭ ተጎድቷል ፡፡ ግን እርስዎም “ኮምፕዩተር የቆየ ነው” ብለው አስተያየት ይሰጣሉ ፣ ያ ማለት አዲስ አለዎት ማለት ነው ፡፡ መጫኑን ከሰራው ኮምፒተርዎ በሃርድ ድራይቭ ላይ ለማስቀመጥ እና ከዚያ አንፃፊ ለመጫን ይሞክሩ።
ከሰላምታ ጋር
ኮምፒተር እና ተንቀሳቃሽ ሳጥን አለዎት? በተንቀሳቃሽ የዩኤስቢ ሳጥን ውስጥ የድሮውን ኮምፒተር ሃርድ ድራይቭ ሰቅለው የመጫኛ ዲስኩን ይጀምሩ ፡፡
ሊነክስ እና ዩኒክስ በመነሻ ደረጃ ላይ ያለውን ሃርድዌር ከግምት ውስጥ አያስገቡም ፣ ዲስኩን እንደገና በሊኑክስ በተጫነው ማስቀመጥ ይችላሉ ፡፡
በጣም አመሰግናለሁ እላችኋለሁ ያደረግኩት ከኡቡንቱ 16.04 ወደ ሉቡንቱ 16.04 በተመሳሳይ ኦፐሬቲንግ ሲስተም ሄጄ ነበር እናም ስለዚህ አሮጌው ኮምፒተርዬ በደንብ እየሰራ ነበር የኮሎምቢያ ሰላምታዎች ፡፡