பாஷில் புரோகிராமிங் - பகுதி 1

நிர்வாக அல்லது கோப்பு மேலாண்மை நடவடிக்கைகளுக்கு நாங்கள் பொதுவாக இதைப் பயன்படுத்தும்போது, ​​தி கன்சோல் de லினக்ஸ் அதன் செயல்பாட்டை அந்த நோக்கத்திற்கு அப்பாற்பட்டது, இது நிரல் செய்ய அனுமதிக்கிறது ஸ்கிரிப்டுகள் எங்கள் தேவைகளுக்கு ஏற்ப. இந்த வழிகாட்டி பாஷ் நிரலாக்கத்தைப் பற்றிய முழுமையான குறிப்பாக இருக்க விரும்பவில்லை, மாறாக அடிப்படை கட்டளைகள் மற்றும் கட்டமைப்புகளுக்கான அறிமுகம், இது எங்கள் குனு / லினக்ஸ் அமைப்பின் சக்தியை விரிவாக்க அனுமதிக்கும்.

"ஸ்கிரிப்ட்" என்றால் என்ன?

அடிப்படையில் இது ஒரு குறிப்பிட்ட நிரலாக்க மொழியில் எழுதப்பட்ட குறியீட்டைக் கொண்ட ஒரு கோப்பு என்று நாங்கள் சொல்கிறோம். இதற்கு வெளிப்புற உள்ளீடு அல்லது வரைகலை இடைமுகம் தேவையில்லை, ஆனால் செயலாக்கப்பட்ட தரவு வெளியீடாக இருக்க வேண்டும் (பயனர் அவற்றைப் பார்க்காவிட்டாலும் கூட).

பாஷ் பயன்படுத்தும் மொழி அதன் சொந்த மொழிபெயர்ப்பாளரால் வரையறுக்கப்படுகிறது மற்றும் கோர்ன் ஷெல் (ksh) அல்லது சி ஷெல் (csh) போன்ற பிற ஷெல்களின் தொடரியல் ஒருங்கிணைக்கிறது. வழக்கமாக கன்சோலில் பயன்படுத்தப்படும் பல கட்டளைகள் ஒரு குறிப்பிட்ட விநியோகத்திற்கு கண்டிப்பாக சொந்தமானவை தவிர, ஸ்கிரிப்ட்களிலும் பயன்படுத்தப்படலாம்.

ஒரு ஸ்கிரிப்ட்டின் அமைப்பு

தொடங்குவதற்கு ஒரு உரை திருத்தி மற்றும் நிரல் விருப்பம் இருக்க வேண்டும். ஒரு .sh ​​நீட்டிப்புடன் நாம் சேமிக்கும் கோப்புகளை கன்சோல் மூலம் இயக்கலாம் (அல்லது விளக்கலாம்), முதல் வரி பின்வருவனவாக இருக்கும் வரை:

#! / பின் / பாஷ்

கோப்பை இயக்க கன்சோலைப் பயன்படுத்த இது கணினியைக் கூறுகிறது. கூடுதலாக, # எழுத்துக்குறி கருத்துகளை எழுத உங்களை அனுமதிக்கிறது. எளிமையான உதாரணத்தை உருவாக்க பின்வரும் படத்தில் காணப்படும் மேலும் ஒரு வரியைச் சேர்ப்போம்:

எதிரொலி கட்டளை திரையில் ஒரு செய்தியைக் காண்பிக்கும், இந்த விஷயத்தில் வழக்கமான "ஹலோ உலகம்!" நாம் அதை சேமித்து கன்சோலுடன் இயக்கினால் முடிவைப் பார்ப்போம்.

அடிப்படை கட்டளைகள்

பின்வரும் கட்டளைகள் பொதுவானவை மற்றும் எந்தவொரு நிரலுக்கும் மிகவும் பயனுள்ளதாக இருக்கும். இன்னும் பல உள்ளன என்பதை நாங்கள் தெளிவுபடுத்துகிறோம், ஆனால் இப்போதைக்கு பின்வருவனவற்றை உள்ளடக்குவோம்.

மாற்றுப்பெயர்கள்: சொற்களின் சரத்தை குறுகியதாக மாற்ற அனுமதிக்கிறது, இது குறியீட்டைக் குறைக்க அனுமதிக்கிறது.

# ஒன்றுக்கு அழைக்கப்படும் ஒரு மாற்றுப்பெயரை # பதிவிறக்குங்கள் கோப்புறையின் மாற்றுப்பெயர் = '/ வீடு / பயனர் / பதிவிறக்கங்கள்'

இடைவெளி: ஒரு வெளியேற, உடனடியாக வெளியேறும் வரை அல்லது சுழற்சியைத் தேர்ந்தெடுக்க உங்களை அனுமதிக்கிறது (பின்னர் சுழல்களை விரிவாகப் படிப்போம்)

# 1 5 முதல் 1 வரையிலான எண்களை ஒதுக்கும் ஒரு சுழற்சியை உருவாக்கவும் $ counter ”# எதிர் மதிப்பு 2 க்கு சமமாக இருந்தால் [$ counter –eq 3] பின்னர் # இடைவெளி fi க்கு பிரேப்பில் இருந்து வெளியேறுகிறது

தொடரவும் - உடைப்பதைப் போன்றது, இது தற்போதைய சுழற்சியைப் புறக்கணித்து அடுத்ததுக்குச் செல்கிறது.

# 1 முதல் 5 வரை கவுண்டருக்கு ஒவ்வொரு "லூப்பின் திருப்பத்திற்கும்" 1 முதல் 2 வரையிலான எண்களை ஒதுக்கும் ஒரு சுழற்சியை உருவாக்கவும் தற்போதைய சுழற்சியின் மீதமுள்ளவை அடுத்த சுற்றுக்குச் செல்வதன் மூலம் பகுப்பாய்வு செய்யப்படுவதைத் தடுக்கிறது, அதாவது # மதிப்பு 3 அச்சிடப்படாது. தொடர fi எதிரொலி "$ எதிர்" முடிந்தது

அறிவிக்கவும்: தட்டச்சு அமைப்பைப் போலவே மாறிகள் அறிவித்து மதிப்புகளை ஒதுக்குகிறது (அவை ஒரே மாதிரியாக செயல்படுகின்றன). நாம் அதை சில விருப்பங்களுடன் இணைக்கலாம்: -ஐ முழு எண்களை அறிவிக்கிறது; -r படிக்க மட்டும் மாறிகள், அதன் மதிப்பை மாற்ற முடியாது; –ஒரு வரிசைகளுக்கு அல்லது “வரிசைகளுக்கு”; செயல்பாடுகளுக்கு -f; ஸ்கிரிப்டின் சூழலுக்கு வெளியே "ஏற்றுமதி" செய்யக்கூடிய மாறிகள் -x.

அறிவிக்க –i எண் = 12 அறிவித்தல் –x பை = 3.14

உதவி: ஒரு குறிப்பிட்ட கட்டளைக்கான உதவியைக் காட்டுகிறது.

வேலைகள்: இயங்கும் செயல்முறைகளைக் காட்டுகிறது.

# உடன் -c கட்டளைகளின் பெயரைக் காண்பிப்போம், ஒவ்வொரு செயல்முறையின் -p # pid (process id) உடன். வேலைகள் -சிபி

விடுங்கள்: எண்கணித வெளிப்பாட்டை மதிப்பீடு செய்யுங்கள்

a = 11 ஐ அனுமதிக்க = a + 5 # இறுதியாக 16 இன் எதிரொலியான "11 + 5 = $ a" இன் மதிப்பை அச்சிடுகிறோம்.

உள்ளூர்: உள்ளூர் மாறிகளை உருவாக்குங்கள், இது பிழைகளைத் தவிர்க்க ஸ்கிரிப்டின் செயல்பாடுகளில் முன்னுரிமை பயன்படுத்தப்பட வேண்டும். நீங்கள் அறிவிக்கும் கட்டளையின் அதே செயல்பாடுகளைப் பயன்படுத்தலாம்.

உள்ளூர் v1 = "இது ஒரு உள்ளூர் மாறி"

வெளியேறுதல்: ஒரு ஷெல்லிலிருந்து வெளியேறுவதை முழுமையாக அனுமதிக்கிறது; ஒன்றுக்கு மேற்பட்ட ஷெல் சாளரங்களுடன் நாங்கள் பணிபுரியும் நிகழ்வுகளுக்கு பயனுள்ளதாக இருக்கும், இதில் வெளியேறும் கட்டளை ஒரு நேரத்தில் ஒரு சாளரத்தை மட்டுமே நிறுத்த அனுமதிக்கும்.

printf: தரவை அச்சிட்டு வடிவமைக்க உங்களை அனுமதிக்கிறது. இதற்கு பல விருப்பங்கள் உள்ளன, எனவே சிலவற்றைக் குறிப்பிடுவோம்.

#% f ஒரு மிதக்கும் எண்ணாக அச்சிடுகிறது, புதிய # வரி printf "% fn" 5 5.000000 # & d தசம எண்களை வாதங்களாக அனுப்ப அனுமதிக்கிறது printf "% d டாலர்களில் மதிப்புள்ள% d ஆர்டர்கள் உள்ளன." 20 500 20 மதிப்புள்ள 500 ஆர்டர்கள் உள்ளன டாலர்கள்.

படிக்க: நிலையான உள்ளீட்டிலிருந்து ஒரு வரியைப் படியுங்கள் (எடுத்துக்காட்டாக விசைப்பலகை மூலம் தரவை ஏற்றுவதற்கு பயன்படுத்தப்படும் தொகுதி). நாம் போன்ற விருப்பங்களை அனுப்பலாம்: -t ஒரு வாசிப்பு வரம்பு நேரம் கொடுக்க; -a எனவே ஒவ்வொரு வார்த்தையும் அனாமே வரிசையில் ஒரு நிலைக்கு ஒதுக்கப்படும்; -d ஒரு டிலிமிட்டரைப் பயன்படுத்த, அது வரியின் முடிவில் எழுதப்படும்; மற்றவர்கள் மத்தியில்.

எதிரொலி "உங்கள் பெயரை உள்ளிட்டு ENTER ஐ அழுத்தவும்" # மாறி பெயரைப் படிக்கவும் பெயர் எதிரொலி "உங்கள் பெயர் $ பெயர்"

வகை: ஒரு கட்டளை மற்றும் அதன் நடத்தை விவரிக்கிறது. ஒவ்வொரு கட்டளைக்கும் தரவு வரையறைகளை அறிய இது பயனுள்ளதாக இருக்கும்.

தட்டச்சு –a '[' # வகை [ஷெல் பில்டின் கட்டளை [ஒரு ஷெல் பில்டின் # -a # எழுதப்பட்ட பெயருடன் இயங்கக்கூடிய # ​​கொண்டிருக்கும் கோப்பகங்களைக் கண்டுபிடிக்க அனுமதிக்கிறது. [என்பது / usr / bin / [

ulimit: சில கணினி வளங்களை செயல்முறைகளுக்கு அணுகுவதையும் பயன்படுத்துவதையும் கட்டுப்படுத்துகிறது, நிர்வாக மாற்றங்களை அனுமதிக்கும் அல்லது பல்வேறு வகையான பயனர்களை நோக்கிய திட்டங்களுக்கு ஏற்றது. ஒரு வரம்பை அமைக்கும் போது, ​​வரம்பின் கிலோபைட்டுகளைக் குறிக்கும் எண்ணை எழுதுகிறோம்.

# எங்கள் தற்போதைய வரம்புகளை நாங்கள் காண்கிறோம் ulimit –a # -f பயனர்களை # 512000 Kb (500 #Mb) ulimit –f 512000 # -v ஐ விட பெரிய கோப்புகளை உருவாக்க முடியாமல் இருப்பதைக் கட்டுப்படுத்த அனுமதிக்கிறது. ulimit –v 512000

காத்திருங்கள்: தொடர ஒரு குறிப்பிட்ட செயல்முறை அல்லது வேலை மேற்கொள்ளப்படும் வரை காத்திருங்கள்.

# ஸ்கிரிப்ட் பிட் # 2585 இன் செயல்முறை மேற்கொள்ள காத்திருக்கிறது

காத்திருங்கள் 2585

ஸ்கிரிப்ட்களில் நாம் சேர்க்கக்கூடிய பிற பயனுள்ள கட்டளைகள் சின்னங்களால் குறிப்பிடப்படுகின்றன.

!!: கடைசி கட்டளையை மீண்டும் இயக்கவும்

! wer: “wer” என்ற வெளிப்பாட்டுடன் தொடங்கிய கடைசி கட்டளையை இயக்குகிறது.

'==', '! =', '>', '<', '> =', மற்றும் '<=': தொடர்புடைய ஆபரேட்டர்கள்.

|: OR ஆபரேட்டர் பொதுவாக இரண்டு வழக்கமான வெளிப்பாடுகளில் சேர பயன்படுகிறது.

: எஸ்கேப் கட்டளை, இது வெளிப்பாடுகளை வடிவமைக்க உங்களை அனுமதிக்கிறது. எடுத்துக்காட்டாக: ஒலி எச்சரிக்கைக்கு ஒரு, புதிய வரிக்கு n, பின்வெளிக்கு b போன்றவை.

நன்றி ஜுவான் கார்லோஸ் ஆர்டிஸ்!

உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுக்கு பொறுப்பு: மிகுவல் ஏஞ்சல் கேடன்
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.

  1.   நடுத்தர கடினம் அவர் கூறினார்

    நன்று! எப்படியிருந்தாலும் 2 கருத்துகள்: உபுண்டு குறிச்சொல் பாதி அதிகமாக உள்ளது, ஏனெனில் இது பொதுவான ஒன்றை பொதுமைப்படுத்துகிறது. இந்த பயிற்சிகள் தொடர்ந்து முன்னேறினால், அவை ஒருவருக்கொருவர் இணைக்கப்பட்டிருந்தால் நல்லது….
    அது தவிர, இந்த நடவடிக்கை சுவாரஸ்யமானது!

  2.   லினக்ஸைப் பயன்படுத்துவோம் அவர் கூறினார்

    நல்ல பங்களிப்பு! நன்று!

  3.   ஜியோவானி எஸ்கோபார் சோசா அவர் கூறினார்

    இந்த விஷயத்தில் மேலும் பலவற்றைப் பெற விரும்புவோருக்கான குறிப்புகள் மட்டுமே இல்லை. சில நல்லவை நம் நாடுகளில் அவ்வளவு எளிதானவை அல்ல
    - லினக்ஸ் கட்டளைகள், தொகுப்பாளர்கள் மற்றும் ஷெல் புரோகிராமிங்கிற்கான நடைமுறை வழிகாட்டி, மார்க் சோபல் (அத்தியாயம் 8)
    - புரோ பாஷ் புரோகிராமிங், கிறிஸ் எஃப்.ஏ ஜான்சன் (இது மற்ற குறிப்புகள் அல்லது இன்னும் கொஞ்சம் அறிவு உள்ளவர்களுக்கு என்றாலும்).

    நல்ல கட்டுரை.

  4.   லினக்ஸைப் பயன்படுத்துவோம் அவர் கூறினார்

    நல்ல தேதி! நன்றி!

  5.   பாட்ரிசியோ டோரண்டஸ் ஜமர்னே அவர் கூறினார்

    : "" உள்நுழைக "செயல்பாடு எனது முந்தைய கருத்தை நீக்கியது, எனவே இதை மேலும் சுருக்கமாகக் கூறுகிறேன்:
    வேலைகள் -சிபி
    bash: jobs: -c: தவறான விருப்பம்
    வேலைகள்: பயன்பாடு: வேலைகள் [-lnprs] [jobspec…] அல்லது jobs -x கட்டளை [args]

    -eq -gt -lt தசம புள்ளி மாறிகளை ஏற்காது, மன்றத்திற்கும் மன்றத்திற்கும் இடையில் பிசி ஒரு நல்ல நட்பு என்பதை நான் கண்டுபிடித்தேன்:
    if [`எதிரொலி 9.999> 10 | bc` -eq 1]; பிறகு
    எதிரொலி "9.999 10 ஐ விட அதிகமாக உள்ளது, உங்கள் செயலி இன்னும் செயல்படுவதை உறுதிசெய்க"
    வேறு
    எதிரொலி, 9.999 10 ஐ விட அதிகமாக இல்லை, எல்லாம் சாதாரணமாக வேலை செய்யும்
    fi

  6.   ப்ரூக்ளினில் இருந்து அல்ல அவர் கூறினார்

    இந்த இடுகை பாஷ் ஸ்கிரிப்ட்டின் அனைத்து பொதுவான தன்மைகளையும் மிகச் சுருக்கமாகக் கூறுகிறது:
    http://www.aboutlinux.info/2005/10/10-seconds-guide-to-bash-shell.html

    இந்த தளத்தில் நீங்கள் பாஷ் தனித்தன்மையைப் பற்றி பல கேள்விகள் மற்றும் பதில்களைக் காண்பீர்கள்:
    http://unix.stackexchange.com/questions/tagged/bash

    இங்கே சில அருமையான ஸ்கிரிப்ட்கள் உள்ளன, ஏய், மற்றவர்களின் ஸ்கிரிப்ட்களைப் படிப்பதன் மூலம் அவற்றைக் கற்றுக்கொள்ளலாம்:
    http://snipplr.com/search.php?q=bash&btnsearch=go

  7.   ப்ரூக்ளினில் இருந்து அல்ல அவர் கூறினார்

    பாஷ் தவிர, நீங்கள் சொல்வதில் நீங்கள் சரியாக இருக்கிறீர்கள். நான் பார்த்த ஒவ்வொரு அமைப்பிலும் / பின் / பாஷில் பாஷ் உள்ளது.

    ஆனால் பைதான், பெர்ல், ரூபி போன்றவற்றைப் பயன்படுத்துவது நல்லது. நான் செய்வேன்

  8.   கில்லே அவர் கூறினார்

    தற்செயலாக, கல்லூரியில் நாங்கள் பாஷ் ஸ்கிரிப்ட்டைப் பயன்படுத்துகிறோம், எனவே தரவு 10, மிகவும் நல்லது!

  9.   அலெக்ஸ் vi அவர் கூறினார்

    பதிவிறக்க ஒரு பி.டி.எஃப் பதிப்பு நன்றாக இருக்கும்! 😀

  10.   மார்கோ அன்டோனியோ டி ஃபியூண்டஸ் அவர் கூறினார்

    மிகவும் நல்ல தளம். நான் இறுதியாக பயனுள்ள ஒன்றைக் கண்டேன். நன்றி.