टर्मिनल शेल स्क्रिप्टिंग वापरुन पॅरामीटर्स कसे काढायचे

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

निवड .007

आम्ही म्हणून देऊ सिंगल कमांड कमांड podemos ऑपरेटिंग सिस्टम / हार्डवेअरमधून मूल्ये / माहिती मिळवा आणि प्रदर्शित कराज्याची आम्ही नंतर ए मध्ये अंमलबजावणी करू बॅश शेल स्क्रिप्ट विशिष्ट कार्य स्वयंचलित करण्यासाठी. वर लक्ष केंद्रित करणे चांगला सराव मार्गाने स्क्रिप्टची उत्कृष्ट रचना मिळवणे आवश्यक आहे अधिक कार्यक्षम आणि व्यावहारिक.

————————————————————-
सिस्टममध्ये तयार केलेल्या प्रथम वापरकर्त्याचे नाव मिळवा:
————————————————————-

USER_1000=$(cat /etc/passwd | grep 1000 | cut -d: -f1) ;  echo $USER_1000

USER_1001=$(cat /etc/passwd | grep 1001 | cut -d: -f1) ;  echo $USER_1001

----------------------
सिस्टमवर तयार केलेल्या प्रथम वापरकर्त्याच्या / घराचा मार्ग मिळवा:
----------------------

USER_1000=$(cat /etc/passwd | grep 1000 | cut -d: -f1) ; HOME_USER_1000=/home/$USER_1000 ; echo $HOME_USER_1000

USER_1001=$(cat /etc/passwd | grep 1001 | cut -d: -f1) ; HOME_USER_1001=/home/$USER_1001 ; echo $HOME_USER_1001

-------------
सद्य उपकरणांची तारीख तपासा:
-------------

FECHA_ACTUAL=$(date +"%d %b %y") ; echo $FECHA_ACTUAL

------------
चालू उपकरणाची वेळ तपासा:
------------

HORA_ACTUAL=$(date +"%H:%M") ; echo $HORA_ACTUAL

----------------
होस्टचे इंटरनेट कनेक्शन आहे का ते तपासा:
----------------

if ping -c 1 8.8.8.8 &> /dev/null; then CONEXION_INTERNET=Habilitado; else CONEXION_INTERNET=Deshabilitado; fi ; echo $CONEXION_INTERNET

TEST_PING=$(ping 192.168.3.249 -c 5 | grep packet | awk '{print $6}' | cut -f1 -d%) ; echo $TEST_PING % de Perdida de paquetes
TEST_LATENCIA=$(ping 8.8.8.8 -c 5 | grep packet | awk '{print $10}' | cut -f1 -d%) ; echo $TEST_LATENCIA de Latencia del Enlace
-------------
ऑपरेटिंग सिस्टमचा प्रकार तपासा:
-------------

SISTEMA_OPERATIVO=$(uname -o) ; echo $SISTEMA_OPERATIVO

----------------------
ऑपरेटिंग सिस्टमचे नाव, आवृत्ती आणि उपशब्द तपासा:
----------------------
NOMBRE_SISTEMA=$(cat /etc/os-release | grep NAME | grep -v "VERSION" | sed -n '2p' | cut -f2 -d\") ; echo $NOMBRE_SISTEMA
VERSION_SISTEMA=$(cat /etc/os-release | grep VERSION= | sed -n '1p' | sed 's/VERSION=//' | sed 's/"//g') ; echo $VERSION_SISTEMA

SUBVERSION_SISTEMA=$(lsb_release -d | awk '{print $4}') ; echo $SUBVERSION_SISTEMA

----------------
ऑपरेटिंग सिस्टमची आर्किटेक्चर तपासा:
----------------

ARQUITECTURA=$(uname -m) ; echo $ARQUITECTURA

ARQUITECTURA=$(uname -m) ; if [[ "$ARQUITECTURA" = "x86" ]]; then ARQ_SISTEMA=32; else ARQ_SISTEMA=64; fi ; echo $ARQ_SISTEMA

------------------
ऑपरेटिंग सिस्टमची कर्नल आवृत्ती तपासा:
------------------

VERSION_KERNEL=$(uname -r) ; echo $VERSION_KERNEL

----------
होस्टचे नाव तपासा:
----------

NOMBRE_HOST=$(cat /etc/hostname) ; echo $NOMBRE_HOST
----------------------
अंतर्गत आणि बाह्य आयपी (मुख्य इंटरनेट आउटपुट) तपासा:
----------------------

IP_INTERNA=$(hostname -I) ; echo $IP_INTERNA

IP_EXTERNA=$(curl -s ipecho.net/plain;echo) ; echo $IP_EXTERNA

------------------
नेटवर्क इंटरफेसची मूल्ये (आयपी / मॅक) तपासा:
------------------

IP_ETH0=$(ifconfig eth0 | grep inet | grep -v inet6 | cut -d ":" -f 2 | cut -d " " -f 1) ; echo $IP_ETH0

MAC_ETH0=$(ifconfig eth0 | sed -n '1p' | awk '{print $5}') ; echo $MAC_ETH0

IP_WLAN0=$(ifconfig wlan0 | grep inet | grep -v inet6 | cut -d ":" -f 2 | cut -d " " -f 1) ; echo $IP_WLAN0

MAC_WLAN0=$(ifconfig wlan0 | sed -n '1p' | awk '{print $5}') ; echo $MAC_WLAN0
-----------------
ऑपरेटिंग सिस्टमचा प्रॉक्सी / गेटवे तपासा:
-----------------

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

----------------
होस्ट नेटवर्क डोमेन नाव तपासा:
----------------

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

---------------------
होस्ट डीएनएस सर्व्हरचे नेटवर्क पत्ता (आयपी) तपासा:
---------------------

IP_SERVIDOR_DNS=$(cat /etc/resolv.conf | sed '1 d' | awk '{print $2}') ; echo $IP_SERVIDOR_DNS

-------------
होस्टशी कनेक्ट केलेले वापरकर्ते तपासा:
-------------

who>/tmp/who ; echo -e "Usuarios conectados al Host :"  && echo "" && echo "Usuarios Puertos      Fecha      Hora  Pantalla" ; echo "*************************************************************************" && cat /tmp/who

USUARIOS_CONECTADOS=$(who | awk '{print $1}') ; echo $USUARIOS_CONECTADOS

USER_ONLINE1=$(who | awk '{print $1}') ; echo $USER_ONLINE1 | wc -w

USER_ONLINE2=$(top -n 1 -b | grep "load average:" | awk '{print $6}') ; echo $USER_ONLINE2
---------------------------------
ऑपरेटिंग सिस्टममध्ये अधिक डेटासह फाइल्स (फायलींपैकी # / बाइट मधील आकारातील) फोल्डर पहा.
----------------------------------

CARPETA_USUARIO1=$(ls -l /home | sed '1 d' | sort -k2 | sed q | awk '{print $9}') ; echo $CARPETA_USUARIO1

DATA_USUARIO1=$(du -sh /home/* | sort -r | sed q | awk '{print $1}') ; echo $DATA_USUARIO1

------------------------------
सुपरयुझर फोल्डर किंवा ऑपरेटिंग सिस्टमच्या इतर फोल्डरच्या बाइट्समध्ये आकार तपासा:
------------------------------

DATA_ROOT=$(du -sh /root | awk '{print $1}') ; echo $DATA_ROOT

DATA_CARPETA1=$(du -sh /var | awk '{print $1}') ; echo $DATA_CARPETA1

--------------------
तयार केलेले वापरकर्ता फोल्डर्स (नावे व क्रमांक) तपासा:
--------------------

NOMBRES_CARPETAS=$(ls -l /home | sed '1 d' | awk '{print $9}') ; echo $NOMBRES_CARPETAS

NUMERO_CARPETAS=$(ls -l /home | sed '1 d' | awk '{print $9}') ; echo $NUMERO_CARPETAS | wc -w

---------------------
यूआयडी 0 आणि जीआयडी 0 (सपुर्सर्स) तयार केलेल्या वापरकर्त्यांना तपासा:
---------------------

SUPERUSUARIOS_UID=$(awk -F: '{if ($3==0) print $1}' /etc/passwd) ; echo $SUPERUSUARIOS_UID

SUPERUSUARIOS_GID=$(awk -F: '{if ($3==0) print $1}' /etc/passwd) ; echo $SUPERUSUARIOS_GID

--------------
रॅम आणि स्वॅप मेमरीची स्थिती तपासा:
--------------

MEM_TOTAL=$(free -h | sed '1 d' | grep Mem: | awk '{print $2}') ; echo $MEM_TOTAL

MEM_USADA=$(free -h | sed '1 d' | grep Mem: | awk '{print $3}') ; echo $MEM_USADA

MEM_LIBRE=$(free -h | sed '1 d' | grep Mem: | awk '{print $4}') ; echo $MEM_LIBRE

MEM_COMPARTIDA=$(free -h | sed '1 d' | grep Mem: | awk '{print $5}') ; echo $MEM_COMPARTIDA

MEM_ALMACENADA=$(free -h | sed '1 d' | grep Mem: | awk '{print $6}') ; echo $MEM_ALMACENADA

MEM_CACHEADA=$(free -h | sed '1 d' | grep Mem: | awk '{print $7}') ; echo $MEM_CACHEADA

SWAP_TOTAL=$(free -h | sed '1 d' | grep Swap: | awk '{print $2}') ; echo $SWAP_TOTAL

SWAP_USADA=$(free -h | sed '1 d' | grep Swap: | awk '{print $3}') ; echo $SWAP_USADA


SWAP_LIBRE=$(free -h | sed '1 d' | grep Swap: | awk '{print $4}') ; echo $SWAP_LIBRE

------------------------
सटा डिस्कच्या विभाजनांची स्थिती / माउंट पॉइंट तपासा:
------------------------

PART1_TOTAL=$(df -h | sed '1 d' | grep /dev/sda5 | awk '{print $2}') ; echo $PART1_TOTAL

PART1_USADO=$(df -h | sed '1 d' | grep /dev/sda5 | awk '{print $3}') ; echo $PART1_USADO

PART1_DISPONIBLE=$(df -h | sed '1 d' | grep /dev/sda5 | awk '{print $4}') ; echo $PART1_DISPONIBLE

PART1_PORCENTAJE=$(df -h | sed '1 d' | grep /dev/sda5 | awk '{print $5}') ; echo $PART1_PORCENTAJE

PART1_PUNTOMONTAJE=$(df -h | sed '1 d' | grep /dev/sda5 | awk '{print $6}') ; echo $PART1_PUNTOMONTAJE

---------------------
सरासरी सिस्टम लोड तपासा (रांगेत प्रक्रिया):
---------------------

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

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

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

CARGA_1MIN=$(uptime | awk '{print $8}' | sed 's/,//2') ; echo $CARGA_1MIN

CARGA_5MIN=$(uptime | awk '{print $9}' | sed 's/,//2') ; echo $CARGA_5MIN

CARGA_15MIN=$(uptime | awk '{print $10}' | sed 's/,//2') ; echo $CARGA_15MIN

-----------------
ऑपरेटिंग सिस्टममध्ये झोम्बी प्रक्रिया तपासा:
-----------------

PROC_ZOMBIE=$(top -n 1 -b | grep "zombie" | awk '{print $10}') ; echo $PROC_ZOMBIE

---------------------
कामाचे एकूण वेळ (प्रारंभ / चालू) तपासा:
---------------------

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

---------------
व्हिडिओ कार्ड मापदंड तपासा:
---------------

============

फॅब्रिकॅंट:

FAB_TVIDEO=$(lspci -v | grep "VGA" | cut -d " " -f05) ; echo $FAB_TVIDEO

============

रॅम मेमरीः

MEM_TVIDEO=$(lspci -v -s `lspci | awk '/VGA/{print $1}'` | sed -n '/Memory.*, prefetchable/s/.*\[size=\([^]]\+\)M\]/\1/p') ; echo $MEM_TVIDEO

================

मॉड्यूल (ड्रायव्हर):

DRV_TVIDEO=$(lspci -nnk | grep -i vga -A3 | grep 'in use' | cut -d " " -f05) ; echo $DRV_TVIDEO

===============

3 डी प्रवेग:

A3D_TVIDEO=$(glxinfo | grep "direct rendering: Yes" | awk '{print $3}') ; echo $A3D_TVIDEO

--------------
प्रोसेसर (सीपीयू) मापदंड तपासा:
--------------

===========

फॅब्रिकॅंट:

FABRICANTE_CPU=$(grep "vendor_id" /proc/cpuinfo | sed q | awk '{print $3}') ; echo $FABRICANTE_CPU

=======

मॉडेलः

MODELO_CPU=$(grep "model name" /proc/cpuinfo | sed q | cut -d ":" -f 2 | awk '{print $0}') ; echo $MODELO_CPU

=========

प्रमाण:

NUM_CPU=$(grep "processor" /proc/cpuinfo | sort -r | sed q | awk '{print $3}') ; TOTAL_CPU=$((`expr $NUM_CPU + 1`)) ; echo $TOTAL_CPU

================

प्रति सीपीयू कोअरः

NUCLEO_CPU=$(grep "cpu cores" /proc/cpuinfo | sed q | awk '{print $4}') ; echo $NUCLEO_CPU

==========================

प्रति सीपीयू एकूण कोरः

NUM_CPU=$(grep "processor" /proc/cpuinfo | sort -r | sed q | awk '{print $3}') ; TOTAL_CPU=$((`expr $NUM_CPU + 1`)) ; NUCLEO_CPU=$(grep "cpu cores" /proc/cpuinfo | sed q | awk '{print $4}') ; TOTAL_NUCLEO_CPU=$((`expr $TOTAL_CPU \* $NUCLEO_CPU`)) ; echo $TOTAL_NUCLEO_CPU

======================

सीपीयू कॅशे मेमरी:

CACHE_CPU=$(grep "cache size" /proc/cpuinfo | sed q | cut -d ":" -f 2 | awk '{print $0}') ; echo $CACHE_CPU

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

नमुना पडदे

जेलबर्ट: बॅश - कॉन्सोल_008

जेलबर्ट: बॅश - कॉन्सोल_009

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


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

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

*

*

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

  1.   एडुआर्डो म्हणाले

    खूप खूप धन्यवाद.

    खूप उपयुक्त

  2.   HO2Gi म्हणाले

    खूप छान धन्यवाद.

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

    सहयोग करण्याचा आनंद! लवकरच मी बर्‍याच व्यावहारिक प्रकरणांमध्ये शेल स्क्रिप्टिंगच्या वापरावर आणखी बरेच काही शिकवीन.

  4.   cr0t0 म्हणाले

    खूप चांगले अभियंता! आशा आहे की आणखी शेल स्क्रिप्टिंग लेख आहेत.

  5.   फ्रान्सिस्को तोवर म्हणाले

    तेथे दर्शविलेल्या कमांड्स उत्कृष्ट आणि अतिशय उपयुक्त आहेत.

  6.   युजरच म्हणाले

    मौल्यवान माहितीबद्दल धन्यवाद; परंतु माझ्या बाबतीत काही आदेश अपेक्षित परिणाम देत नाहीत, उदाहरणार्थ "कोण" आणि "डब्ल्यू" ही आज्ञा काही दर्शवित नाही; मी काही सिस्टम अद्यतन केल्यापासून माझ्या बाबतीत असे घडले आहे (मी स्क्रीन व्यवस्थापक "एलएक्सडीएम" आणि ग्राफिकल पर्यावरण "एक्सएफसी 4.12" सह आर्चीलिनक्स वापरतो). काय होते याची काही कल्पना (मी वापरकर्त्याचा रूट वापरत असलो तरीही परिणाम समान आहे).
    धन्यवाद.

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

    त्यांना शेल स्क्रिप्टिंगसह तयार केलेली तज्ञांची प्रणाली पाहिजे की विनंती केल्याने अहवालाच्या स्वरूपात सर्व सिस्टम पॅरामीटर्सचे अर्क तयार होईल.

    शेल स्क्रिप्टिंगद्वारे काय केले जाऊ शकते याचे एक उदाहरणः

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

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