शेल स्क्रिप्टिंग लागू करणारे सायस minडमीन टर्मिनल कसे मिळवावे

El शेल स्क्रिप्टिंग, ते संदर्भित जटिल ऑर्डरची अंमलबजावणी त्याच्याबद्दल जीएनयू / लिनक्स टर्मिनल (कन्सोल), आमच्यात नियमित आणि महत्वाचे क्रियाकलाप स्वयंचलित करण्यासाठी खूप उपयुक्त आहे जीएनयू / लिनक्स ऑपरेटिंग सिस्टम, जे आम्हाला आमच्या ऑप्टिमाइझ करण्याची परवानगी देते संसाधने आणि वेळ.

निवड .007

म्हणूनच, टर्मिनलमधून त्याचा उपयोग आम्हाला स्क्रिप्टद्वारे स्वहस्ते किंवा स्वयंचलितपणे किंवा ऑपरेटिंग सिस्टममधील स्वयंचलितपणे लोड केलेल्या फायलींमध्ये किंवा नियोजित कार्येमध्ये प्रोग्राम केलेल्या रूटीन म्हणून जटिल कमांड कमांड कार्यान्वित करण्यास परवानगी देतो. जीएनयू / लिनक्स. आणि एक साठी मध्यम वापरकर्ता, प्रगत किंवा SysAdmin el वेळापत्रक (स्वयंचलित) कार्ये, सतर्कता आणि / किंवा जतन करण्यासाठी होस्ट (पीसी / सर्व्हर) वर सूचना तास / कामगार व्यक्तिचलित अंमलबजावणीसाठी किंवा व्यक्तिशः, हे उच्च-स्तरीय व्यावसायिक म्हणून आपल्या कार्याच्या चांगल्या कामगिरीसाठी काहीतरी मूलभूत आणि आवश्यक आहे.

पुढे कसे ते दाखवू डेटा (मूल्य / मापदंड) पूर्वी कमांडद्वारे व्हेरिएबलमधे संचित केले होते बाश शेल किंवा सुसंगत, ते आपल्या जीएनयू / लिनक्स ऑपरेटिंग सिस्टमच्या टर्मिनलमध्ये, व्यावहारिक आणि सोप्या पद्धतीने दर्शविले जाऊ शकते. टर्मिनल प्रॉम्प्ट ट्यून करण्याव्यतिरिक्त.

पहिली पायरी: आपल्या वापरकर्त्याचे .bashrc संपादित करा

आपल्या पसंतीच्या संपादकासह (vi, नॅनो इ.) संपादन करा .bashrc फाईल आपल्या वापरकर्त्याचे जे त्याच घराच्या आत स्थित असले पाहिजे, उदाहरणार्थ, उदाहरणार्थः "/ मुख्यपृष्ठ / माझे_उपर".

वापरकर्त्याच्या टर्मिनलची अंमलबजावणी करताना वापरकर्त्यास दर्शविण्यासाठी आपल्याला सोयीचे वाटत असलेल्या पुढीलपैकी प्रत्येक ओळीची आणि त्या सर्व अतिरिक्त सामग्रीची सामग्री घाला.

sleep 3

clear

########################### PARÁMETROS DE MONITOREO ###########################

NOMBRE_SISTEMA=$(cat /etc/os-release | grep NAME | grep -v "VERSION" | sed -n '2p' | cut -f2 -d\")
VERSION_SISTEMA=$(cat /etc/os-release | grep VERSION= | sed -n '1p' | sed 's/VERSION=//' | sed 's/"//g')

FABRICANTE_CPU=$(grep "vendor_id" /proc/cpuinfo | sed q | awk '{print $3}')
MODELO_CPU=$(grep "model name" /proc/cpuinfo | sed q | cut -d ":" -f 2 | awk '{print $0}')
NUM_CPU=$(grep "processor" /proc/cpuinfo | sort -r | sed q | awk '{print $3}' | echo `expr $NUM_CPU + 1`)
NUCLEO_CPU=$(grep "cpu cores" /proc/cpuinfo | sed q | awk '{print $4}')
CACHE_CPU=$(grep "cache size" /proc/cpuinfo | sed q | cut -d ":" -f 2 | awk '{print $0}')

clear

printf %80s |tr " " "="
echo ""
echo "      ADVERTENCIA - USTED HA INICIADO SESIÓN EN EL EQUIPO SERVIDOR DE LA      "
echo "                             EMPRESA INSTITUCIÓN XYZ                                "
echo "       RECUERDE TENER EXTREMO CUIDADO CON CUALQUIER CAMBIO A REALIZAR        "
printf %80s |tr " " "="
echo ""
printf %80s |tr " " "="
echo ""
echo "                         ESTE EQUIPO TIENE INSTALADO                         "
echo "                                                                             "
echo "TIPO DE S.O.: <"`uname -o`">                                                 "
echo "NOMBRE / VERSIÓN DEL S.O.: &lt;"$NOMBRE_SISTEMA"&gt; / &lt;"$VERSION_SISTEMA"&gt;        "
echo "KERNEL / ARQUITECTURA: <"`uname -r`"> / <"`uname -m`">                       "
echo "INFO DEL CPU: ("$FABRICANTE_CPU") / ("$MODELO_CPU") / ("$NUM_CPU") / ("$NUCLEO_CPU") / ("$CACHE_CPU")"
printf %80s |tr " " "="
echo ""
echo ""

PS1="\[\e[33;1m\]┌─( \[\e[34;1m\]\u@\h\[\e[37;1m\] ) * * * * \d - \t * * * * { \[\e[31;1m\]\w\[\e[33;1m\] }\n└──┤ \[\e[32m\]# "

`

दुसरी चरण: मूळ .bashrc संपादित करा

पुन्हा एडिटर सह संपादन आधीच वापरले .bashrc फाईल अगोदर निर्देश केलेल्या बाबीसंबंधी बोलताना सुपरयूजर रूट जे त्याच्या पथात / मूळात स्थित असले पाहिजे.

वापरकर्त्याच्या टर्मिनलची अंमलबजावणी करताना वापरकर्त्यास दर्शविण्यासाठी आपल्याला सोयीचे वाटत असलेल्या पुढीलपैकी प्रत्येक ओळीची आणि त्या सर्व अतिरिक्त सामग्रीची सामग्री घाला.

########################### PARÁMETROS DE MONITOREO ###########################

alias cc='clear'

PROXY=$(route -n | sed -n '3p' | awk '{print $2}')

IP_SERVIDOR_DNS=$(cat /etc/resolv.conf | sed '1 d' | grep nameserver | sed -n '1p' | awk '{print $2}')
DOMINIO=$(cat /etc/resolv.conf | sed '1 d' | grep search | sed -n '1p' | awk '{print $2}')

DATA_USUARIO1=$(du -sh /home/ | sort -r | awk '{print $1}')
DATA_ROOT=$(du -sh /root | awk '{print $1}')
DATA_VAR=$(du -sh /var | awk '{print $1}')

MEM_TOTAL=$(free -h | sed '1 d' | grep Mem: | awk '{print $2}')
MEM_USADA=$(free -h | sed '1 d' | grep Mem: | awk '{print $3}')
MEM_LIBRE=$(free -h | sed '1 d' | grep Mem: | awk '{print $4}')
MEM_COMPARTIDA=$(free -h | sed '1 d' | grep Mem: | awk '{print $5}')
MEM_ALMACENADA=$(free -h | sed '1 d' | grep Mem: | awk '{print $6}')
MEM_CACHEADA=$(free -h | sed '1 d' | grep Mem: | awk '{print $7}')

PART1_TOTAL=$(df -h | sed '1 d' | grep disk | awk '{print $2}')
PART1_USADO=$(df -h | sed '1 d' | grep disk | awk '{print $3}')
PART1_DISPONIBLE=$(df -h | sed '1 d' | grep disk | awk '{print $4}')
PART1_PORCENTAJE=$(df -h | sed '1 d' | grep disk | awk '{print $5}')
PART1_PUNTOMONTAJE=$(df -h | sed '1 d' | grep disk | awk '{print $6}')

CARGA_1MIN=$(top -n 1 -b | grep "load average:" | awk '{print $12}' | sed 's/,//2')

CARGA_5MIN=$(top -n 1 -b | grep "load average:" | awk '{print $13}' | sed 's/,//2')
CARGA_15MIN=$(top -n 1 -b | grep "load average:" | awk '{print $14}' | sed 's/,//2')

USER_ONLINE=$(top -n 1 -b | grep "load average:" | awk '{print $8}')
PROC_ZOMBIE=$(top -n 1 -b | grep "zombie" | awk '{print $10}')

TIEMPO_ENCENDIDO=$(uptime | awk '{print $3,$4}' | cut -f1 -d,)

FABRICANTE_CPU=$(grep "vendor_id" /proc/cpuinfo | sed q | awk '{print $3}')
MODELO_CPU=$(grep "model name" /proc/cpuinfo | sed q | cut -d ":" -f 2 | awk '{print $0}')
NUM_CPU=$(grep "processor" /proc/cpuinfo | sort -r | sed q | awk '{print $3}' | echo `expr $NUM_CPU + 1`)
NUCLEO_CPU=$(grep "cpu cores" /proc/cpuinfo | sed q | awk '{print $4}')
CACHE_CPU=$(grep "cache size" /proc/cpuinfo | sed q | cut -d ":" -f 2 | awk '{print $0}')

IP_ETH0=$(ifconfig eth0 | grep inet | grep -v inet6 | cut -d ":" -f 2 | cut -d " " -f 1)
MAC_ETH0=$(ifconfig eth0 | sed -n '1p' | awk '{print $5}')

###############################################################################

if ping -c 1 8.8.8.8 &amp;&gt; /dev/null; then CONEXION_INTERNET=Habilitado; else CONEXION_INTERNET=Deshabilitado; fi

set -o vi

printf %80s |tr " " "="
echo ""
echo "      ADVERTENCIA - USTED HA INICIADO SESIÓN EN EL EQUIPO SERVIDOR DE LA      "
echo "                             EMPRESA INSTITUCIÓN XYZ                                "
echo "       RECUERDE TENER EXTREMO CUIDADO CON CUALQUIER CAMBIO A REALIZAR        "
printf %80s |tr " " "="
echo ""
printf %80s |tr " " "="
echo ""
echo "                    PARÁMETROS ACTUALES DE FUNCIONAMIENTO                    "
echo "                                                                             "
echo "MEMORIA TOTAL: ("$MEM_TOTAL") - MEMORIA USADA: ("$MEM_USADA") - MEMORIA LIBRE: ("$MEM_LIBRE")"
echo "DISCO PRINCIPAL: ("$PART1_TOTAL") - ESPACIO USADO: ("$PART1_USADO") - ESPACIO LIBRE: ("$PART1_DISPONIBLE") - %: ("$PART1_PORCENTAJE") - PARTICION: ("$PART1_PUNTOMONTAJE")"
echo "CARGA PROMEDIO DEL SISTEMA: 1 MIN ("$CARGA_1MIN") -  5 MIN ("$CARGA_5MIN") - 15 MIN ("$CARGA_15MIN")"
echo "USUARIOS CONECTADOS: ("$USER_ONLINE") -  PROCESOS ZOMBIES: ("$PROC_ZOMBIE")"
echo "TIEMPO ARRANQUE/ENCENDIDO: ("$TIEMPO_ENCENDIDO")                             "
echo "ESPACIO USADO: /home = ("$DATA_USUARIO1") /root = ("$DATA_ROOT") /var = ("$DATA_VAR")"
printf %80s |tr " " "="
echo ""
echo ""
PS1="\[\e[33;1m\]┌─( \[\e[34;1m\]\u@\h\[\e[37;1m\] ) * * * * \d - \t * * * * { \[\e[31;1m\]\w\[\e[33;1m\] }\n└──┤ \[\e[32m\]$ "

तिसरी पायरी: मूळ .bashrc संपादित करा

लॉग आउट आणि टर्मिनल. ते पुन्हा सुरू करा आणि बदलांचा अनुभव घ्या. खालील प्रतिमांमध्ये हे खाली दर्शविलेल्यासारखे दिसले पाहिजे:

चरण 1: टर्मिनल स्टार्टअप

चरण 2: वापरकर्ता संपादित करा .Bashrc

चरण 3: वापरकर्ता .bashrc मध्ये सामग्री घातली

चरण 4: रूट लॉगिन

चरण 5: रूट लॉगिन

चरण 6: मूळ .bashrc फाइल संपादित करा

चरण 7: मूळ .bashrc फाइल संपादित करा

चरण 8: मूळ .bashrc फाइल संपादित करा

चरण 9: नवीन क्लायंट टर्मिनलचे प्रात्यक्षिक उदाहरण

चरण 10: नवीन क्लायंट टर्मिनलचे प्रात्यक्षिक उदाहरण

चरण 11: नवीन क्लायंट टर्मिनलचे प्रात्यक्षिक उदाहरण

चरण चार (पर्यायी): उपनावे ट्यूनिंग

लक्षात ठेवा की मध्ये उपनाव वापर .bashrc हे आपल्या लेखनाचा बराच वेळ वाचवू शकते. .Bashrc मध्ये डीफॉल्टनुसार आलेल्यांना कमेंट करा, जसे की:

alias ls='ls $LS_OPTIONS'
<strong>alias ll='ls $LS_OPTIONS -l'
<strong>alias l='ls $LS_OPTIONS -lA'

alias rm='rm -i'

आणि आपण आवश्यक असलेले समजून घ्या, कारण त्या वारंवार वापरल्या जाणा commands्या आज्ञा जसे:

alias cc='clear'

त्याबद्दल स्वत: ची शिकवलेल्या मार्गाने अधिक जाणून घेणे महत्वाचे आहे चल, उपनावे, .bashrc आणि भाषा बॅश शेल टर्मिनलच्या प्रगत स्तरासाठी. Ssh द्वारे रिमोट सेशन्स सुरू करताना हे प्राप्त केले जाऊ शकते, जे आम्ही भविष्यातील इतर प्रकाशनात नंतर पाहू शकतो.

मला आशा आहे की ही लहान मुले "टिपा" त्यांच्यासाठी मूलभूत परंतु उपयुक्त ऑप्टिमायझेशन करणे सुलभ करा, जे सामान्यत: केवळ तज्ञांसाठी राखीव असतात तंत्रज्ञान, संगणन, नि: शुल्क सॉफ्टवेअर आणि जीएनयू / लिनक्स.

स्मरणपत्र: कोणतीही कमांड लाइन अचूक मूल्य अमलात आणण्यास अपयशी ठरल्यास किंवा काही व्हेरिएबल्सची व्हॅल्यूज किंवा वाक्यरचना समायोजित करण्यासाठी कमांड प्रॉमप्टच्या प्रत्येक विभागात व्यक्तिचलितपणे तपासून पहा.


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.

  1.   येप्पे म्हणाले

    उपनावे सर्वोत्तम आहेत. मला बाशरक: ला (एलएस -ए) आणि एलएल (एलएस-एल) मध्ये डीफॉल्टनुसार समाविष्ट असलेल्यांपैकी काही वाईट वाटत नाही. शेवटी मी पॅरामीटर -h जोडा.

    इतर व्यावहारिक उपनावः
    s = 'sudo'
    सीडी 1 = 'सीडी ..'
    सीडी 2 = 'सीडी ../ ..'
    rmd = 'rm -r' (मी फाईल्सच्या सहाय्याने डिरेक्टरीज काढण्यासाठी वापरतो)
    शटडाउन = 'सुडो शटडाउन -आता'
    डेल = 'कचरा-पुट' (फायली कचर्‍यात हलवा, कचरापेटी पॅकेज कमांड)

  2.   टोन म्हणाले

    हे उर्फ ​​मी मागील वर्षी रेडडिटवर पाहिले असल्याने ते माझे आवडते आहे:
    उर्फ संभोग = 'सुडो $ (इतिहास -पी !!)'

  3.   मार्टिन म्हणाले

    कन्सोलला देणारा लेख आणि त्याचे स्वरूप खूप चांगले आहे. काही योगदानः
    - उबंटूमध्ये उपनावे वेगळी फाइल (.bash_aliases) मध्ये ठेवली जाऊ शकतात उर्वरित वितरण मला माहित नाही परंतु हे .bashrc मध्ये खालील ओळी जोडून ते करते:
    जर [-f ~ / .bash_aliases]; मग
    . ~ / .बाश_आलिस
    fi
    हे उपनावे अधिक ऑर्डर करण्यास अनुमती देते आणि माझ्यासारख्या विसरण्याकरिता आपण हा उपनाव जोडू शकता जे उपनाव सूचीबद्ध फाइल दर्शवेल:
    उर्फ lsalias = 'अधिक ~ / .बाश_लिआलिस'
    - माझ्याकडे वारंवार वापरली जाणारी कमांड टेक्स्ट फाईल देखील आहे (जी मला सहसा आठवत नाही) कमांड_्युइटल.टीक्स्ट म्हणतात आणि खालील उर्फसह तयार आहे: उर्फ ​​cutil = 'अधिक ~ / कमांड_उटाईल.टीक्स्ट'
    - मी वापरत असलेली अधिक उपनावेः
    उर्फ सीडीयू = 'सीडी ~'
    उर्फ lof = 'ls -lSr | अधिक' # आकारानुसार क्रमवारीत असलेल्या फायली दर्शविते
    उर्फ लॉड = 'डु -स्क * | सॉर्ट-आरएन '# डिरेक्टरीज आकारानुसार सॉर्ट केल्या
    उर्फ डीओओ = 'डु-शश' # दिरांनी व्यापलेल्या जागेचा अंदाज लावा
    उर्फ psa = 'PS -Efw | अधिक '# सर्वसह सर्व प्रक्रिया दर्शवा
    उर्फ PSg = 'PS -Efw | grep '# दर्शविलेली प्रक्रिया दर्शवा
    - शेवटी, मी केलेल्या वापरकर्त्यांसाठी एक पर्याय:
    SYSTEM_NAME = $ (मांजर / इत्यादी / ओएस-रिलीझ | ग्रेप NAME | ग्रेप -v "VERSION" | सेड-एन '1 पी' | कट-एफ 2-डी \ »)
    प्रणाली
    MANUFACTURER_CPU = $ (ग्रेप "विक्रेता_आयडी" / प्रो / सीपीयूइनफो | सेड क्यू
    सीपीयू_मोडेल = $ (ग्रेप "मॉडेलचे नाव" / प्रोक / सीपीयूइनफो | सेड क्यू | कट-डी ":" -f 2 | अवाक '{प्रिंट $ 0}')
    NUM_CPU = $ (ग्रेप "प्रोसेसर" / प्रो / सीपीयूइनफो | सॉर्ट-आर | सेड क्यू | अोर्क '{प्रिंट $ 3}' | प्रतिध्वनी expr $NUM_CPU + 1)
    NUCLEO_CPU = $ (grep "cpu cores" / proc / cpuinfo | sed q | awk '{प्रिंट $ 4}'))
    CACHE_CPU = $ (grep "कॅशे आकार" / proc / cpuinfo | सेड q | कट-डी ":" -f 2 | awk '{प्रिंट $ 0}')
    USER_Data = $ (du -sh ~ | सॉर्ट-आर | अस्ताव्यस्त '{मुद्रण $ 1}')

    स्पष्ट
    printf% 130s | tr »» «=»
    "" बाहेर फेकले
    प्रतिध्वनी «तारीख:date +%c --date='+1 year'
    प्रतिध्वनी «केर्नेल:«uname -o»<«uname -r«> <uname -m«>»
    "DISTRIBUTION:" cho SYSTEM_NAME "" $ SYSTEM_VERSION "" प्रतिध्वनी
    प्रतिध्वनी "सीपीयू:" OD मॉडेल_सीपीयू "," U एनयूसीएलईओ सीसीपीयू "न्यूक्ली," $ CACHE_CPU "कॅशे"
    प्रतिध्वनी «वापरलेली जागा: ATA ATA डेटा_यूएसयूएआरआयओ
    printf% 130s | tr »» «=»
    "" बाहेर फेकले
    #####################################################################
    प्रतिध्वनी "उपयुक्त आज्ञा:"
    इको »- डीईबी पॅकेज सिस्टममध्ये आरपीएम स्थापित करा: एलियन-सी -i पॅकेज. आरपीएम»
    प्रतिध्वनी user - वापरकर्ता व फाइल गट वारंवार बदला: chown -hR वापरकर्ता: गट [फाईल किंवा दिर] »
    इको »- परवानग्या ठेवून कॉपी कराः सीपी-फॅक्स सोर्स गंतव्य»
    इको »- सक्रिय रेपॉजिटरी दर्शवा: grep -i ppa.launchpad.net /etc/apt/sورس.list.d/*.list list
    इको »- एक रेपॉजिटरी जोडा: ptप्ट--ड-रिपॉझिटरी पीपीए: रिपॉझिटरी»
    प्रतिध्वनी ORE - अधिक मटील कॉमेन्ट्स पहाण्यासाठी »
    प्रतिध्वनी »- आलियास दर्शविण्यासाठी as
    printf% 130s | tr »» «=»
    "" बाहेर फेकले
    "" बाहेर फेकले
    # पीएस 1 = »[\ ई [; 33; १ मी] ┌─ ([\ ई [; 1; १ मी] \ यू @ \ एच [\ ई [; 34; १ मी]) * * * * \ डी - \ टी * * * * {[\ ई [;१; १ मी] \ डब्ल्यू [\ ई [; 1; १ मी]} \ एन [\ ई [m२ मी] # »
    PS1=»[\e[33;1m]┌─([\e[34;1m]\u@\h[\e[37;1m])>{ [\e[31;1m]\w[\e[33;1m] }\n└──┤ [\e[32m]# «

    1.    अ‍ॅबडॉन एस म्हणाले

      आपल्या स्वत: च्या लेखात का चांगले नाही?

  4.   अ‍ॅबडॉन एस म्हणाले

    हे मला आवडत्या शिकवण्या आहेत !!!!!!!!!

  5.   इं. जोस अल्बर्ट म्हणाले

    बरं, मला आनंद झाला आहे की तुला तो आवडला आणि त्याची सेवा दिली!

    उद्या मी आशा करतो की दुसरा लेख प्रकाशित करा! उतार.

  6.   वापरकर्ता कमान म्हणाले

    ती माहिती सामायिक केल्याबद्दल शुभेच्छा आणि असीम कृतज्ञता.
    मला जीएनयू / लिनक्सच्या कारभाराबद्दल फारसे ज्ञान नाही (मी शैक्षणिक प्रशिक्षणाशिवाय केवळ एक अनुभवी आणि कुतूहल वापरकर्ता आहे), परंतु विशेषाधिकार वाढीसह सुरक्षिततेच्या समस्यांविषयी काही वेबसाइटवर वाचल्याचे मला आठवते; .bashrc स्क्रिप्टमधील काही कमांड्स आणि पाईप्स, मला असे वाटते की ते हॅकर किंवा क्रॅकरचे कार्य सुलभ करू शकतात.
    आदरपूर्वक आणि खूप कृतज्ञ

  7.   इं. जोस अल्बर्ट म्हणाले

    टर्मिनलचे अनुकूलन करणे शेल स्क्रिप्टिंग सोपे आहे, चांगले शेल स्क्रिप्टिंग करून आपण किती पुढे जाऊ शकता ते पहा.

    एलपीआय-एसबी 8 चाचणी स्क्रीनकास्ट (लिनक्स पोस्ट स्थापित करा - स्क्रिप्ट द्विशतक 8.0.0)
    (lpi_sb8_adaptation-audiovisual_2016.sh / 43Kb)

    स्क्रीनकास्ट पहा: https://www.youtube.com/watch?v=cWpVQcbgCyY

  8.   काव्यात वापर म्हणाले

    मस्त ट्यूटोरियल! शेल स्क्रिप्टिंग, कॉन्फिगरेशन, सर्व्हर सिक्युरिटी शिकण्यासाठी तुम्ही लिनक्सवर शिफारस केलेले कोणतेही पुस्तक? धन्यवाद