Partager un script pratique - une clé pour obtenir la mémoire linux, cpu, disque IO et d'autres informations

contour

Aujourd'hui, la principale part un script shell utilisé pour obtenir CPU système linux, mémoire, disque IO et d'autres informations.

scénario

#! / Bin / bash # Obtenir l'adresse IP du serveur local à surveiller IP = `ifconfig | grep iNet | grep -vE 'inet6 | 127.0.0.1' | awk '{print $ 2}'` echo "Adresse IP:" $ IP # Obtenez le nombre total de noyau cpu cpu_num = `grep -c "nom du modèle"/ proc / cpuinfo` echo "nombre total de cpu du nucléaire:" $ cpu_num # 1, obtenir l'utilisation du processeur ################################################ l'espace utilisateur #us occupé par le pourcentage de CPU #sy espace noyau occupé par le pourcentage de CPU processus prioritaires dans l'espace de processus utilisateur modifié #ni occupé par le pourcentage de CPU #id pourcentage CPU ralenti pourcentage #wa de temps CPU attente d'entrée et de sortie interruption matérielle #hi interruption logicielle #Si ################################################# # Obtenir l'espace utilisateur occupé par le pourcentage de CPU cpu_user = `top -b -n 1 | grep Cpu | awk '{print $ 2}' | cut -f 1 -d "%"` echo « espace utilisateur occupé par le pourcentage de CPU: » $ cpu_user # Get espace noyau occupé par le pourcentage de CPU cpu_system = `top -b -n 1 | grep Cpu | awk '{print $ 4}' | cut -f 1 -d "%"` echo « espace noyau occupé par le pourcentage de CPU: » $ cpu_system # Obtenez le pourcentage de CPU ralenti cpu_idle = `top 1 -b -n | grep Cpu | awk '{print $ 8}' | cut -f 1 "%" -d` echo "pourcentage de ralenti CPU:" $ cpu_idle # Attendez pour obtenir les entrées et sorties ont représenté le pourcentage de CPU cpu_iowait = `top 1 -b -n | grep Cpu | awk '{print $ 10}' | cut -f 1 "%" -d` echo « attendre d'entrée-sortie qui représente le pourcentage de CPU: » $ cpu_iowait # 2, pour obtenir le nombre d'interruptions de CPU et les commutateurs de contexte # Get CPU interruptions cpu_interrupt = `vmstat -n 11 | -n 3p sed | awk '{print $ 11}'` echo "Les interruptions de CPU:" $ cpu_interrupt # Obtenez le nombre de changements de contexte CPU cpu_context_switch = `vmstat -n 11 | -n 3p sed | awk '{print $ 12}'` echo "contexte CPU passe:" $ cpu_context_switch # 3, pour obtenir des informations sur la charge CPU # Obtenez il y a CPU15 minutes à la moyenne de la charge actuelle cpu_load_15min = `temps de fonctionnement | awk '{print $ 11}' | cut -f 1 -d ''` echo "CPU il y a 15 minutes à la moyenne charge actuelle:" $ cpu_load_15min # Obtenez il y a CPU5 minutes à la moyenne de la charge actuelle cpu_load_5min = `temps de fonctionnement | awk '{print $ 10}' | cut -f 1 -d ''` echo "CPU 5 minutes il y a à la charge moyenne actuelle:" $ cpu_load_5min # Obtenez il y a CPU1 minutes à la moyenne de la charge actuelle cpu_load_1min = `temps de fonctionnement | awk '{print $ 9}' | cut -f 1 -d ''` echo "CPU il y a 1 minute à la moyenne actuelle charge:" $ cpu_load_1min # Obtenir (le nombre de processus d'attente de l'état prêt) la file d'attente des tâches cpu_task_length = `vmstat -n 11 | -n 3p sed | awk '{print $ 1}'` echo "tâche de la longueur de la file d'attente CPU:" $ cpu_task_length # 4, obtenir des informations de la mémoire # Obtenir la mémoire physique totale mem_total = `gratuit | grep Mem | awk '{print $ 2}'` echo "mémoire physique totale:" $ mem_total # Système d'exploitation a été utilisé pour obtenir la quantité totale de mémoire mem_sys_used = `gratuit | grep Mem | awk '{print $ 3}'` echo "la quantité totale de mémoire utilisée (OS):" mem_sys_used $ # Obtenir le système d'exploitation ne pas utiliser la quantité de mémoire mem_sys_free = `gratuit | grep Mem | awk '{print $ 4}'` echo "La quantité de mémoire (OS) restant:" $ mem_sys_free # Obtenir la quantité de mémoire de l'application a été utilisée mem_user_used = `gratuit | sed -n 3p | awk '{print $ 3}'` echo "la quantité de mémoire utilisée (l'application):" mem_user_used $ # Obtenez l'application ne pas utiliser la quantité de mémoire mem_user_free = `gratuit | sed -n 3p | awk '{print $ 4}'` echo "La quantité de mémoire restante (l'application):" $ mem_user_free # Obtenez la taille totale de la partition de swap mem_swap_total = `gratuit | Swap grep | awk '{print $ 2}'` echo "La taille totale de la partition de swap:" $ mem_swap_total # Get Swap utilisé taille de la partition mem_swap_used = `gratuit | Swap grep | awk '{print $ 3}'` echo "a été utilisé la taille de la partition swap:" mem_swap_used $ # Obtenez le swap restant taille de la partition mem_swap_free = `gratuit | grep Swap | awk '{print $ 4}'` echo "Le reste de la taille de la partition swap:" mem_swap_free de $ # 5, les statistiques d'E / S disque écho "le périphérique spécifié (/ dev / sda) Statistiques" # Pour lire le nombre de requêtes par seconde initiative dispositif disk_sda_rs = `iostat kx | grep sda | awk '{print $ 4}'` echo « pour lire le nombre de requêtes par seconde dispositif lancé: » $ disk_sda_rs # Nombre de requêtes par seconde à écriture.Dispositif-initié disk_sda_ws = `iostat kx | grep sda | awk '{print $ 5}'` echo « par dispositif lancé pour écrire le nombre de demandes: » $ disk_sda_ws # Pour dispositif initié par la moyenne de longueur de la file d'attente demande d'E / S disk_sda_avgqu_sz = `iostat kx | grep sda | awk '{print $ 9}'` echo « au dispositif d'ouverture de la longueur de la file d'attente de demande d'E / S moyenne » $ disk_sda_avgqu_sz # A chaque E / S initié de périphérique demande le temps moyen disk_sda_await = `iostat kx | grep sda | awk '{print $ 10}'` echo « à chaque E / S initié de périphérique demande le temps moyen: » $ disk_sda_await # Lancez le temps de service E / S de l'appareil à la moyenne disk_sda_svctm = `iostat kx | grep sda | awk '{print $ 11}'` echo "pour lancer le dispositif temps de service I / O signifie:" $ disk_sda_svctm # Initier demande d'E / S à la comptabilisation du pourcentage de dispositif de temps CPU disk_sda_util = `iostat kx | grep sda | awk '{print $ 12}'` echo « pourcentage de demandes d'E / S initiant la comptabilité du temps CPU à un appareil: » $ disk_sda_util

Les résultats:

Plus tard, partageront plus DevOps et aspects DBA, et les amis intéressés peuvent se concentrer le prochain!

La ville peut apprendre la connaissance du feu Sensibilisation incendie voiture thème en Floride est en ligne
Précédent
Aimez-vous les voitures? Regarder les performances et les événements de voiture et de moto sur place, à Jiangcheng Wuhan, le minimum est de seulement 50 yuans
Prochain
scripts shell Linux détaillée utilisation et expériences montrent changement
Et bien vendus bien peu importe, ces voitures ne sont des appels de charge d'envoyer?
Principe, expliquer la base de données impact sur les performances de MySQL à double écriture et paramètres connexes
Novembre 2019 classements de popularité de la base de données mondiale - ont fortement chuté dans les trois première base de données
C'est hors ligne, il Voyage Peng, Voyage ...... pourquoi la nouvelle Réparateur électrique des nouvelles forces obsédés par les services de voyage?
Ting magnifique | largeur maximale de l'allée de la poudre noire, brillante et solitaire d'être dans une
scripts détaillés shell à utiliser sur les getopts
Vous ne pouvez pas vendre de l'or neuf en argent dix cette année? Regardez ces voitures de fabrication nationale, les ventes de CS75 dépassent Tiguan / CR-V
Partagez un des scripts shell utiles - système Linux d'accès et de contrôle des informations et l'utilisation des ressources
MQB, tnga ...... Écoutez très puissant, mais puissant dans ce qu'il? produits alimentaires vieux chauffeur de vous prendre pour apprendre à connaître TA
Inconnu Oracle11g liste de contrôle d'accès au réseau
200000 budget, vous voulez un grand espace? Regardez les cinq grands plusieurs VUS, assis confortablement aussi économe en carburant