Secuencias de comandos básicos ejercicios

1. scripting /root/bin/systeminfo.sh, el sistema mostrará la información actual anfitrión, incluyendo el nombre de host, dirección IPv4, la versión del sistema operativo, la versión del núcleo, tipo de CPU, capacidad de memoria, tamaño del disco duro.
#! / Bin / bash

visualización de información de hardware del equipo

        echo "主机名:      $(hostname)"
        echo "IPv4地址:    $(ifconfig | head -n2 |tail -n1 |tr -s " " ":"| cut -d":" -f3)"
        echo "操作系统版本:$(cat /etc/redhat-release)"
        echo "内核版本:    $(uname -r)"
        echo "CPU型号:     $(cat /proc/cpuinfo|grep "model name"|uniq -c|cut -d":" -f2)"
        echo "内存大小:    $(free -m | head -n2 |tail -n1|tr -s " " ":"|cut -d":" -f2)"
        echo "硬盘大小:    $(fdisk -l | grep "GB"|cut -d":" -f2|cut -d"," -f1)"

2. Escribir un guión /root/bin/backup.sh, se puede lograr el diario directorio / etc / copia de seguridad en / root / etcYYYY-mm-dd en
#! / Bin / bash
cp -r / etc / / root / etc " $ (% FECHA + F) "
3. /root/bin/disk.h secuencias de comandos, muestra la corriente de partición de disco duro utilización del espacio valor máximo
# / bin / bash!
max = $ (df | TR -s" "" : "| cut -d": "- F5 | egrep -o" [[: digit:]] * "| Ordenar la -nr | n1 cabeza)
echo" la utilización del espacio de partición de disco duro actual es máxima: $ max "
4. /root/bin/links.sh secuencias de comandos, direcciones IPv4 pantalla y el número de conexiones está conectando cada host remoto este host y pulse el número de conexiones orden descendente
#! / bin / bash
links = $ ( netstat -tan | grep "^ [t ] | [u]" | tr -s "" ":" | cut -d ":" -f6 | uniq -c | tipo -nr | egrep "\ <(([0 -9] | [1-9] [0-9 ] | 1 [0-9] [0-9] | 2 [0-4] [0-9] |. 25 [0-5])) {3 } ([0-9] | [1-9 ] [0-9] | 1 [0-9] [0-9] | 2 [0-4] [0-9] | 25 [0-5]) "| cola n1)
echo" número de conexiones y direcciones IP son: $ enlaces "
Salir 0
5.Secuencias de comandos /root/bin/sumid.sh, computación, etc archivo décima / passwd XX el ID de usuario del usuario y
#! / Bin / bash
Usera = $ (cat -n / etc / passwd | cabeza | cola n1 | cut -d ":" -f3)
echo "Identificación del为10的UID: $ Usera"
Usuario B = $ (cat -n / etc / passwd | cabeza -n20 | cola n1 | cut -d ":" -f3)
echo "Identificación del为20的UID: $ userb"

userall = $ + $ Usera userb

let usera=$usera+$userb
echo "id和为: $usera"
exit 0

6. /root/bin/sumspace.sh scripting, pasando dos ruta de archivo como parámetro para la secuencia de comandos, estos dos documentos se calcula de la suma de todas las líneas en blanco.
#! / Bin / bash
A = $ (CAT $ 1 | grep "^ [[: space:]]. $" | Wc -l)
B = $ (CAT $ 2 | grep "^ [[: space:]]
$" | -l WC)
#let = $ a $ a + b
let C = a + $ B $
"líneas en blanco de $ 1, $ 2, y dos archivos a C $" eco
de salida 0
7. /root/bin/sumfile.sh el scripting estadística número de directorio /etc,./var,/usr de un total de subdirectorios y archivos
#! / bin / bash
EF = $ (LS / etc / | grep " [:] $" | WC la -l)
= $ ED (LS / etc / | grep -v " [:] $" | grep -v "^ [[: space:]] $" | -l WC)
VF = $ (LS / var /
| grep " . [:] $ "| -l WC)
VD = $ (LS / var /
| grep -v." [:] $ "| grep -v" ^ [[: space:]] $ "
[:] $ "| WC la -l)
ud = $ (LS / usr / | grep -v." [:] $ "| Grep -v" ^ [[: space:]] * $ "| WC la -l)
echo "/ directorio etc en un total de $ ef un subdirectorio, archivo $ ed"
eco "directorio / var, un total de $ vf un subdirectorio, $ vd archivos"
"directorio de eco / usr, un total de $ uf un subdirectorio, $ archivos ud "
8. escribir una secuencia de comandos de script generado, / root / bin / createsh.sh cuando se ejecuta como cuando .sh prueba /root/bin/createsh.sh, será automáticamente / crear un nuevo archivo llamado test.sh bajo la raíz / bin, el archivo automáticamente le dará el permiso para ejecutar, y añadir automáticamente la información del archivo y notas de cabeza # anotación de información de la siguiente manera:!.
# / bin / bash!

------------------------------------------

    # Filename:    test.sh(此处会根据文件名自动更换)
    # Revision:    1.0
    # Date:        2017-01-22(此处会自动变换为当前日期)
    # Author:      Nanyibo
    # Email:       [email protected]
    # ------------------------------------------
    # Copyright:   2017 nanyibo
    # License:     GPL

Después de eso, la apertura automática uso vim, a la espera de que el usuario comience a escribir el texto del script
#! / Bin / bash
Touch / root / bin / $ 1
chmod los ejes X + / root / bin / $ 1
echo "#! / Bin / bash

------------------------------------------

                    # Filename:    $1(此处会根据文件名自动更换)
                    # Revision:    1.0
                    # Date:        $(date +%F)(此处会自动变换为当前日期)
                    # Author:      xiaoyu
                    # Email:       [email protected]
                    # ------------------------------------------
                    # Copyright:   2018 xiaoyu
                    # License:     GPL" > /root/bin/$1
        vim /root/bin/$1

Supongo que te gusta

Origin blog.51cto.com/13870640/2485278
Recomendado
Clasificación