બેશમાં પ્રોગ્રામિંગ - ભાગ 3

પેરા સુરક્ષિત અમારા ખ્યાલો પ્રોગ્રામિંગ માટે આપણે 2 ખૂબ ઉપયોગી સાધનો શીખીશું જે બશમાં સંપૂર્ણ રીતે કાર્ય કરે છે. બનાવવાનું શીખો કાર્યો અને વ્યાખ્યાયિત કરો પાઇપલાઇનો પહેલા જટિલ લાગશે, પરંતુ તે પછી આપણે પ્રચંડ જોશું ઉપયોગિતા કે તેઓ અમને પ્રદાન કરે છે.

પાઈપો

ખાસ કરીને, અને ઘણા બધા વારા લીધા વિના, પાઇપલાઇન એ એક પદ્ધતિ છે જે એક પ્રક્રિયાના આઉટપુટને બીજાના ઇનપુટ તરીકે નિર્દેશિત કરવાની મંજૂરી આપે છે, જે કોડની રેખાઓને ઘટાડવા, પરિણામો માટે સ્ટોરેજ ચલો સાથે વિતરણ અને સુધારણા જેવા ફાયદાની શ્રેણીને મંજૂરી આપે છે. સ્ક્રિપ્ટની કાર્યક્ષમતા.

પાઇપ સામાન્ય રીતે પ્રતીક રાખીને ઓળખાય છે | જે અભિવ્યક્તિને એકીકૃત કરવા દે છે; તેમ છતાં તેનો ઉપયોગ ડિફ defaultલ્ટ રૂપે થાય છે, પાઈપો બનાવવા માટેની અન્ય રીતો છે.

ઉદાહરણ: તાજેતરના કર્નલ સંદેશાઓ છાપો

#dmesg તમને સિસ્ટમ બુટ દરમ્યાન તાજેતરના કર્નલ સંદેશાઓ અને લોડ થયેલ ડ્રાઇવરો જોવાની મંજૂરી આપે છે; પૂંછડી ફાઇલ અથવા # કોમંડના છેલ્લા ભાગોને છાપે છે

dmesg | પૂંછડી

તેમ છતાં તે આપણે જોઈએ તેટલું જટિલ હોઈ શકે છે, પાઇપલાઇનની મૂળભૂત રચના એક આદેશના પરિણામને પછીના ઇનપુટ તરીકે ઉપયોગમાં લેવાની મંજૂરી આપે છે, જે જો આપણે સતત પાઈપો ઉમેરવાનું ચાલુ રાખીએ તો નવા આદેશનું ઇનપુટ પ્રદાન કરી શકે છે.

કાર્યો

વિધેયો એ નિવેદનોનો સમૂહ છે જે એક સાથે જૂથ થયેલ છે જેથી તેઓને ફરીથી લખ્યા વગર ઘણી વાર ચલાવી શકાય. તે વિચારવું બરાબર છે કે જ્યારે આપણે કોઈ પ્રકારનો ખોરાક રાંધવાનું શીખીશું, ત્યારે આપણે તેની રેસિપિ શીટ પર લખીશું, અને દર વખતે જ્યારે આપણે તે ખોરાક રાંધવા માંગીએ છીએ, ત્યારે અમે તે જ રેસીપી સાથે નવી શીટ લખીને બદલે રેસીપીની સલાહ લઈએ છીએ.

કદાચ કાર્યો વિશેની સૌથી અગત્યની બાબત એ છે કે પરિમાણો, ડેટા પસાર થવાની સંભાવના, જેનો ઉપયોગ તેઓ તેમની પ્રક્રિયા કરવા અને આઉટપુટ બનાવવા માટે કરશે. તેની રચના નીચે મુજબ છે.

ફંક્શન ફંક્શન-નામ

પ્રક્રિયાઓ

}

ઉદાહરણ: કાર્ય કે જે સેવાઓ બતાવે છે જે tcp પ્રોટોકોલ પર કાર્ય કરે છે. આપણે વધુ પાઈપો કેવી રીતે લાગુ કરવી તે પણ જોઈ શકીએ છીએ.

# અમે કોઈ ફંકશન નામ વ્યાખ્યાયિત કરીએ છીએ, તે આપણી પસંદીદા હોઈ શકે છે.

કાર્ય સેવાઓ_tcp {

# કેટ એ / etc / Services ફોલ્ડરની સામગ્રીને એકીકૃત અને પ્રદર્શિત કરે છે, જે # છે જેમાં તેમના સંબંધિત બંદરો સાથેની બધી સેવાઓ શામેલ છે.

# પ્રથમ ગ્રીપ સૂચિ લે છે અને ટિપ્પણીઓને દૂર કરે છે, સાથે - પરિણામને આપણે ઉલટાવીએ છીએ

# બીજું ગ્રેપ ફક્ત તે જ બતાવે છે tcp થી સંબંધિત

બિલાડી / વગેરે / સેવાઓ | grep –v "^ #" | ગ્રેપ ટી.સી.પી.

}

જ્યારે આપણે આ ફંકશનને એક્ઝીક્યુટ કરવાની જરૂર હોય ત્યારે આપણે તેને ફક્ત તેના નામથી ક callલ કરવો પડશે:

tcp_services

આ કિસ્સામાં તે પરિમાણો વિના કાર્ય કરે છે; જો તે થાય, તો આપણે તેમને ઉમેરવું આવશ્યક છે કે જેથી કાર્ય યોગ્ય રીતે કાર્ય કરે, નહીં તો કાર્ય યોગ્ય રીતે કાર્ય કરશે નહીં. વળતરનો ઉપયોગ પ્રક્રિયાને પરિણામે કાર્યને મૂલ્ય પરત કરવાની મંજૂરી આપે છે.

ઉદાહરણ: ઇનપુટ પરિમાણો સાથે કાર્ય કે જે 2 નંબરોની રકમની ગણતરી કરે છે.

#! / બિન / બૅશ
કાર્ય રકમ ()
{
# ચાલો આપણે અવતરણ અંદર ઓપરેશન ચલાવી શકીએ
ચાલો "પરિણામ = $ 1 + $ 2"

# પૂર્ણાંક પૂર્ણાંકોનું મૂલ્ય પાછું આપવાની મંજૂરી આપે છે. એકવાર રીટર્ન એક્ઝેક્યુટ થઈ જાય, પછી વેરીએબલ inside ની અંદર વેલ્યુ જમા થશે?
વળતર $ પરિણામ;
}
 
# સરવાળો ફંક્શન કહેવામાં આવે છે અને અમે 2 ઇનપુટ પરિમાણો પસાર કરીએ છીએ.

2 3 ઉમેરો

# ની કિંમત છાપશે? અવતરણમાં વેરીએબલના વાસ્તવિક મૂલ્યનું મૂલ્યાંકન કરતી ઇકો સાથે
ઇકો -e "પરિણામ = $?";

<< પહેલાના ભાગ પર જાઓ

આભાર જુઆન કાર્લોસ ઓર્ટીઝ!


તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: મિગ્યુએલ gelંજેલ ગેટóન
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.

  1.   નીલ પોઇન્ટર જણાવ્યું હતું કે

    મને ખાતરી નથી, પરંતુ કાર્યોનું વળતર નિવેદન ફક્ત "એક્ઝિટ" ના એરર કોડ્સ જેવા પૂર્ણાંકને 0 અને 255 ની વચ્ચે આપવા માટે વપરાય છે, સામાન્ય રીતે 0 જો બધું સારું છે અને અન્ય કિસ્સાઓમાં બીજી સંખ્યા. તેમ છતાં, ઉદાહરણ તરીકે આ કાર્ય કરે છે, મને નથી લાગતું કે પરિણામ વળતર સાથે પરત કરવું એ સારી પ્રથા છે.
    ત્યાં હું એક બકવાસ હુ કહી રહ્યો છું! આંખ! હા!

  2.   જુંક જણાવ્યું હતું કે

    સત્યએ મને શંકા છોડી દીધી. કોઈ પણ સંજોગોમાં, ફંક્શન્સની સમસ્યાઓથી બચવા માટે, ફંક્શન પાછા ફરવા અથવા મૂલ્ય અથવા શબ્દમાળાને છાપવા માંગે છે તે સ્થિતિમાં આપણે ઇકો સાથે રીટર્ન બદલી શકીએ છીએ.

  3.   હાબલ એસ. માઉન્ટ બીગ જણાવ્યું હતું કે

    તે સાચું છે, આને હલ કરવા માટે તમે બીસી આદેશનો ઉપયોગ કરી શકો છો, સરવાળે તમે જે કાર્ય કરી શકો છો: પરિણામ = cho ઇકો $ 1 + $ 2 | બીસી -ક્લ`

  4.   લુઈસ મિગુએલ જણાવ્યું હતું કે

    ગુડ,

    હું જાણવાનું પસંદ કરું છું કે હું બેશ ફાઇલોને ક્યાં સાચવી શકું છું જેથી તેઓ સિસ્ટમ વિશાળ ચલાવે અને તે બિન ડિરેક્ટરી નથી, પરંતુ બેકઅપ માટે ઘર હોઈ શકે છે.

    આભારી અને અભિલાષી.

  5.   જોક્વિન જણાવ્યું હતું કે

    આપનો ખૂબ ખૂબ આભાર, હું સ્ક્રિપ્ટ્સથી પ્રારંભ કરું છું, અને સત્ય એ છે કે આ ખૂબ ઉપયોગી છે, તમે તમારા જ્ knowledgeાનને ખૂબ જ વહેંચી રહ્યાં છો!
    સાદર

    1.    ચાલો લિનક્સનો ઉપયોગ કરીએ જણાવ્યું હતું કે

      આભાર! આલિંગન!
      પાબ્લો

  6.   ક્રિસ્ટન જણાવ્યું હતું કે

    સિન્ટેક્સ ભૂલ: "(" અનપેક્ષિત
    ઉદાહરણ ચલાવવાનો પ્રયાસ કરતી વખતે મને એક ભૂલ થાય છે, મેં તેની બરાબર તે જ નકલ કરી

    શું હોઈ શકે? હું ઉબુન્ટુ 14.10 પર છું