The Shell Scripting, То се отнася до изпълнение на сложни поръчки за него GNU/Linux терминал (конзола), много е полезно да автоматизираме рутинните и важни дейности в рамките на нашата Операционна система GNU/Linux, което ни позволява да оптимизираме нашите Ресурси и време, тоест с това, което се съдържа тук, ще проучим как от терминала можем да изпълняваме ръчни командни нареждания, които след това ни позволяват график/автоматизиране дейности за спестяване на екип Часове/труд на ръчно или лице в лице изпълнение, изпълнявайки тези поръчки в Bash Shell или съвместим скрипт и обяснено по практичен и лесен начин.

терминала

————————————————————-
Получете името на първия потребител, създаден в системата:
————————————————————-

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

———————————————————————
Вземете пътя/home на първия потребител, създаден в системата:
———————————————————————

USER_1000 = $ (cat/etc/passwd | grep 1000 | cut -d: -f1); HOME_USER_1000 =/начало/$ USER_1000; ехо $ HOME_USER_1000

USER_1001 = $ (cat/etc/passwd | grep 1001 | cut -d: -f1); HOME_USER_1001 =/начало/$ USER_1001; echo $ HOME_USER_1001

————————————-
Проверете текущата дата на оборудването:
————————————-

CURRENT_DATE = $ (дата + "% d% b% y"); ехо $ CURRENT_DATE

————————————
Проверете текущото време на оборудването:
————————————

CURRENT_TIME = $ (дата + "% H:% M"); ехо $ CURRENT_TIME

———————————————–
Проверете дали хостът има интернет връзка:
———————————————–

ако ping -c 1 8.8.8.8 &>/dev/null; след това CONNECTION_INTERNET = Активирано; else CONEXION_INTERNET = Забранено; fi; echo $ CONNECTION_INTERNET

TEST_PING = $ (пинг 192.168.3.249 -c 5 | grep пакет | awk '' | cut -f1 -d%); echo $ TEST_PING% от загубени пакети
TEST_LATENCIA = $ (пинг 8.8.8.8 -c 5 | grep пакет | awk '' | cut -f1 -d%); echo $ TEST_LATENCIA Латентност на връзката
—————————————
Проверете типа операционна система:
—————————————

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

——————————————————————-
Проверете името, версията и подрива на операционната система:
——————————————————————-
SYSTEM_NAME = $ (cat/etc/os-release | grep NAME | grep -v "VERSION" | sed -n '2p' | cut -f2 -d \ "); echo $ SYSTEM_NAME
SYSTEM_VERSION = $ (cat/etc/os-release | grep VERSION = | sed -n '1p' | sed 's/VERSION = //' | sed 's/"// g'); echo $ SYSTEM_VERSION

SUBVERSION_SISTEMA = $ (lsb_release -d | awk ''); ехо $ SUBVERSION_SISTEMA

————————————————
Проверете архитектурата на операционната система:
————————————————

АРХИТЕКТУРА = $ (uname -m); echo $ АРХИТЕКТУРА

АРХИТЕКТУРА = $ (uname -m); ако [["$ ARCHITECTURE" = "x86"]]; тогава ARQ_SISTEMA = 32; иначе ARQ_SISTEMA = 64; fi; ехо $ ARQ_SISTEMA

——————————————————
Проверете версията на ядрото на операционната система:
——————————————————

VERSION_KERNEL = $ (uname -r); ехо $ VERSION_KERNEL

—————————–
Проверете името на хоста:
—————————–

HOST_NAME = $ (cat/etc/hostname); ехо $ HOST_NAME
——————————————————————-
Проверете вътрешния и външния IP (Основен интернет изход):
——————————————————————-

INTERNAL_IP = $ (име на хост -I); echo $ INTERNAL_IP

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

——————————————————
Проверка на стойности (IP/MAC) на мрежовите интерфейси:
——————————————————

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 ''); ехо $ 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 ''); echo $ MAC_WLAN0
——————————————————
Проверете прокси/шлюза на операционната система:
——————————————————

PROXY_GATEWAY = $ (маршрут -n | sed -n '3p' | awk ''); echo $ PROXY_GATEWAY

———————————————–
Проверете името на домейна на хост мрежата:
———————————————–

DOMAIN = $ (cat /etc/resolv.conf | sed '2 d' | grep търсене | sed -n '1p' | awk ''); echo $ DOMAIN
————————————————————-
Проверете мрежовия адрес (IP) на DNS сървъра на хоста:
—————————————————————-

IP_SERVIDOR_DNS = $ (cat /etc/resolv.conf | sed '1 d' | awk ''); ехо $ IP_SERVIDOR_DNS

————————————–
Проверете потребителите, свързани към хоста:
————————————–

CONNECTED_USERS = $ (кой | awk ''); ехо $ CONNECTED_USERS

USER_ONLINE1 = $ (кой | awk ''); echo $ USER_ONLINE1 | wc -w

USER_ONLINE2 = $ (top -n 1 -b | grep "средно натоварване:" | awk ''); echo $ USER_ONLINE2
—————————————————————————————————
Проверете потребителската папка с повече данни (брой файлове/размер в байтове) в операционната система:
————————————————————————————————–-

USER_FOLDER1 = $ (ls -l/home | sed '1 d' | sort -k2 | sed q | awk ''); ехо $ USER_FOLDER1

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

——————————————————————————————
Проверете размера в байтове на суперпотребителска папка или друга папка на операционната система:
——————————————————————————————

DATA_ROOT = $ (du -sh/root | awk ''); ехо $ DATA_ROOT

DATA_FOLDER1 = $ (du -sh/var | awk ''); echo $ DATA_FOLDER1

————————————————————––
Проверете създадените потребителски папки (имена и номера):
————————————————————–

FOLDER_NAMES = $ (ls -l/home | sed '1 d' | awk ''); echo $ FOLDER_NAMES

NUMBER_FOLDERS = $ (ls -l/home | sed '1 d' | awk ''); echo $ NUMBER_FOLDERS | wc -w

————————————————————-
Проверете Потребители с UID 0 И GID 0 (SUPERUSERS) създадени:
————————————————————-

SUPERUSERS_UID = $ (awk -F: ''/etc/passwd); ехо $ SUPERUSUARIOS_UID

SUPERUSERS_GID = $ (awk -F: ''/etc/passwd); ехо $ SUPERUSUARIOS_GID

——————————————
Проверете състоянието на RAM и суап памет:
——————————————

MEM_TOTAL = $ (безплатно -h | sed '1 d' | grep Mem: | awk ''); echo $ MEM_TOTAL

MEM_USADA = $ (безплатно -h | sed '1 d' | grep Mem: | awk ''); ехо $ MEM_USED

MEM_LIBRE = $ (безплатно -h | sed '1 d' | grep Mem: | awk ''); ехо $ MEM_LIBRE

SHARED_MEM = $ (безплатно -h | sed '1 d' | grep Mem: | awk ''); echo $ MEM_SHARED

СЪХРАНЕНО MEM = $ (безплатно -h | sed '1 d' | grep Mem: | awk ''); echo $ СЪХРАНЕНА ЧАСТ

MEM_CACHEADA = $ (безплатно -h | sed '1 d' | grep Mem: | awk ''); echo $ MEM_CACHEADA

SWAP_TOTAL = $ (безплатно -h | sed '1 d' | grep Swap: | awk ''); echo $ SWAP_TOTAL

SWAP_USADA = $ (безплатно -h | sed '1 d' | grep Swap: | awk ''); ехо $ SWAP_USADA

SWAP_LIBRE = $ (безплатно -h | sed '1 d' | grep Swap: | awk ''); ехо $ SWAP_LIBRE

——————————————————————————
Проверете състоянието на дяловете/точката на монтиране на SATA диск:
——————————————————————————

PART1_TOTAL = $ (df -h | sed '1 d' | grep/dev/sda5 | awk ''); ехо $ PART1_TOTAL

PART1_USED = $ (df -h | sed '1 d' | grep/dev/sda5 | awk ''); ехо $ PART1_USED

PART1_AVAILABLE = $ (df -h | sed '1 d' | grep/dev/sda5 | awk ''); echo $ PART1_AVAILABLE

PART1_PERCENTAGE = $ (df -h | sed '1 d' | grep/dev/sda5 | awk ''); ехо $ PART1_PERCENTAGE

PART1_MOUNTPOINT = $ (df -h | sed '1 d' | grep/dev/sda5 | awk ''); ехо $ PART1_MOUNTPOINT

————————————————————-
Проверете средното натоварване на системата (процеси на опашка):
————————————————————-

LOAD_1MIN = $ (отгоре -n 1 -b | grep "средно натоварване:" | awk '' | sed 's /, // 2'); ехо $ LOAD_1MIN

LOAD_5MIN = $ (отгоре -n 1 -b | grep "средно натоварване:" | awk '' | sed 's /, // 2'); ехо $ LOAD_5MIN

LOAD_15MIN = $ (top -n 1 -b | grep "средно натоварване:" | awk '' | sed 's /, // 2'); ехо $ LOAD_15MIN

LOAD_1MIN = $ (ъптайм | awk '' | sed 's /, // 2'); ехо $ LOAD_1MIN

LOAD_5MIN = $ (ъптайм | awk '' | sed 's /, // 2'); ехо $ LOAD_5MIN

LOAD_15MIN = $ (ъптайм | awk '' | sed 's /, // 2'); ехо $ LOAD_15MIN

——————————————————
Проверете процесите на зомбита в операционната система:
——————————————————

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

—————————————————————-
Проверете общото работно време (стартиране/включване):
————————————————————-

ON_TIME = $ (ъптайм | awk '' | cut -f1 -d,); ехо $ ON_TIME

——————————————–
Проверете параметрите на видеокартата:
——————————————–

Производител:

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

RAM:

MEM_TVIDEO = $ (lspci -v -s `lspci | awk '/ VGA /' | | sed -n '/Memory.*, с възможност за предварително изтегляне/s /.* \ [размер = \ ([^]] \ + \) M \]/\ 1 p '); echo $ MEM_TVIDEO

Модул (драйвер):

DRV_TVIDEO = $ (lspci -nnk | grep -i vga -A3 | grep 'в употреба' | cut -d " -f05); echo $ DRV_TVIDEO

3D ускорение:

A3D_TVIDEO = $ (glxinfo | grep "директно изобразяване: Да" | awk ''); echo $ A3D_TVIDEO

——————————————
Проверете параметрите на процесора (CPU):
——————————————

Производител:

MANUFACTURER_CPU = $ (grep "vendor_id"/proc/cpuinfo | sed q | awk ''); echo $ MANUFACTURER_CPU

Модел:

CPU_MODEL = $ (grep "име на модел"/proc/cpuinfo | sed q | cut -d ":" -f 2 | awk ''); ехо $ MODEL_CPU

Количество:

NUM_CPU = $ (grep "процесор"/proc/cpuinfo | сортиране -r | sed q | awk ''); TOTAL_CPU = $ ((`expr $ NUM_CPU + 1`)); ехо $ TOTAL_CPU

Ядра на процесор:

NUCLEO_CPU = $ (grep "ядра на процесора"/proc/cpuinfo | sed q | awk ''); echo $ NUCLEO_CPU

Общо ядра на процесори:

NUM_CPU = $ (grep "процесор"/proc/cpuinfo | сортиране -r | sed q | awk ''); TOTAL_CPU = $ ((`expr $ NUM_CPU + 1`)); NUCLEO_CPU = $ (grep "ядра на процесора"/proc/cpuinfo | sed q | awk ''); TOTAL_NUCLEO_CPU = $ ((`израз $ TOTAL_CPU \ * $ NUCLEO_CPU`)); ехо $ TOTAL_NUCLEO_CPU

Кеш памет на процесора:

CACHE_CPU = $ (grep "размер на кеша"/proc/cpuinfo | sed q | cut -d ":" -f 2 | awk ''); echo $ CACHE_CPU

Надявам се тези малки "Съвети" улесняват извършването на основни, но полезни оптимизации, които обикновено са запазени само за експерти в Технологии, изчисления, свободен софтуер и GNU/Linux.

ПРОБНИ ЕКРАНИ

ПРИПОМНЕТЕ: Ако някой команден ред не се изпълнява или не показва правилната стойност, не забравяйте да тествате ръчно всеки раздел от командния ред, за да опитате да коригирате стойностите или синтаксиса на някои променливи.