В этой публикации будут рассмотрены простые примеры командных команд, которые дополнят предыдущие публикации по этой теме, которые были специально и расширены с помощью команд: GREP, AWK y СЕПГ. Также используются другие важные команды, такие как: кошка, вырезать, эхо, сортировать, которые облегчают чтение, извлечение, фильтрацию и упорядочение информации, управляемой другими командами верхнего уровня.
Ожидается, что с этими простыми примерами все, кто их изучает, достигнут гораздо более высокого уровня их понимания. которые позволяют им применять их вручную на терминалах своих компьютеров или автоматически в сценариях, которые они создают для автоматизированных задач.
Примеры управления временными переменными
FECHA_ACTUAL=$(date +"%d-%b-%y")
# echo $FECHA_ACTUAL
# Fecha actual del Sistema
FECHA_ACTUAL_EXT=$(date "+%d-%m-%y_%H-%M-%S")
# echo $FECHA_ACTUAL_EXT
# Fecha actual extendida del Sistema
HORA_ACTUAL=$(date +"%H-%M")
# echo $HORA_ACTUAL
# Hora actual del Sistema
FECHA_SISTEMA_AN=$(date +"%d-%b-%y")
# echo $FECHA_SISTEMA_AN
# Almacenar la fecha Alfanumérica actual del Equipo
FECHA_SISTEMA_N=$(date +"%d-%m-%y")
# echo $FECHA_SISTEMA_N
# Almacenar la fecha Numérica actual del Equipo
DIA_ACTUAL=$(date +"%d")
# echo $DIA_ACTUAL
# Almacenar el día actual del Equipo
MES_ACTUAL_A=$(date +"%b")
# echo $MES_ACTUAL_A
# Almacenar el mes alfabético actual del Equipo
MES_ACTUAL_N=$(date +"%m")
# echo $MES_ACTUAL_N
# Almacenar el mes numérico actual del Equipo
ANO_ACTUAL_2C=$(date +"%y")
# echo $ANO_ACTUAL_2C
# Almacenar el año (con 2 cifras) actual del Equipo
ANO_ACTUAL_4C=$(date +"%Y")
# echo $ANO_ACTUAL_4C
# Almacenar el año (con 4 cifras) actual del Equipo
HORA_SISTEMA=$(date +"%H-%M")
# echo $HORA_SISTEMA
# Almacenar la Hora actual del Equipo
HORA_ACTUAL=$(date +"%H")
# echo $HORA_ACTUAL
# Almacenar la Hora actual del Equipo
MINUTOS_ACTUAL=$(date +"%M")
# echo $MINUTOS_ACTUAL
# Almacenar la Hora actual del Equipo
Примеры управления именами пользователей
NOMBRE_USUARIO=$(cat /etc/passwd | grep 1000 | cut -d: -f1)
# echo $NOMBRE_USUARIO
# Nombre de Usuario creado por UID/GID (EJM. 1000) - VERSION SIMPLE
NOMBRE_USUARIO=$(awk -F: '{if ($3==1000) print $1}' /etc/passwd)
# echo $NOMBRE_USUARIO
# Nombre de Usuario creado por UID/GID (EJM. 1000) - VERSION COMPLEJA
NOMBRE_USUARIO=$(awk -F: '{if ($4==1000) print $1}' /etc/passwd)
# echo $NOMBRE_USUARIO
# Nombre de Usuario creado por UID/GID (EJM. 1000) - VERSION COMPLEJA
IDSUPERUSER=$(id -u | awk '{print $1}')
# echo $IDSUPERUSER
IDSUPERUSER=$(echo $UID)
# echo $IDSUPERUSER
IDSUPERUSER=$(getent passwd $USER | cut -d: -f3)
# echo $IDSUPERUSER
# Almacenar IUD del Superusuario root
USER_NAME_1=$(cat /etc/passwd | grep 1000 | cut -d: -f1 | awk '{print $1}') ; echo $USER_NAME_1
HOME_USER_NAME_1=/home/$USER_NAME_1 ; echo $HOME_USER_NAME_1
# Almacenar el nombre del usuario 1000 y su /home. Probable único y primer Usuario del Sistema.
USER_NAME_2=$(cat /etc/passwd | grep 1001 | cut -d: -f1 | sed -n '2p' | awk '{print $1}')
HOME_USER_NAME_2=/home/$USER_NAME_2 ; echo $USER_NAME_2
# Almacenar el nombre del usuario 1001 y su /home. Probable segundo Usuario del Sistema.
ID_USERNAME_SESSION=$(for i in $(who | sed 1q | cut -c 1-8); do grep $i /etc/passwd | awk '{print "\t" $1}' | tr -d '[A-Za-z]' | sed 's/::x*//' | cut -c 1-5 | awk '{print $1}' ; done | sed 1q) ; echo $ID_USERNAME_SESSION
# Almacenar el ID del Nombre del primer usuario (alfabéticamente) detectado conectado (con sesión abierta) en el sistema.
USERNAME_ID_SESSION=$(for i in $(who | sed 1q | cut -c 1-8); do grep $i /etc/passwd | awk '{print "\t" $1}' | tr -d '[A-Za-z]' | sed 's/::x*//' | cut -c 1-5 | awk '{print $2}' ; done ; echo $i) ; echo $USERNAME_ID_SESSION
# Almacenar el Nombre del primer usuario (alfabéticamente) detectado conectado (con sesión abierta) en el sistema.
Примеры управления данными распределения
VERSION_SISTEMA=$(cat /etc/os-release | grep VERSION= | sed -n '1p' | sed 's/VERSION=//' | sed 's/"//g')
# echo $VERSION_SISTEMA
# Versión del Sistema Operativo
SUBVERSION_SISTEMA=$(lsb_release -d | awk '{print $4}')
# echo $SUBVERSION_SISTEMA
# Subversión del Sistema Operativo
TIPO_S_O_L=$(uname -o)
# echo $TIPO_S_O_L
# Almacena el nombre largo del tipo de Sistema Operativo encontrado.
TIPO_S_O_C=$(uname -s)
# echo $TIPO_S_O_C
# Almacena el nombre corto del tipo de Sistema Operativo encontrado.
NOM_DISTRO_C=$(cat /etc/os-release | grep NAME | grep -v "VERSION" | sed -n '2p' | cut -f2 -d\" | awk '{print $1}')
NOM_DISTRO_C=$(lsb_release -d | sed 's/Description://' | awk '{print $1}')
NOM_DISTRO_C=$(cat /etc/os-release | grep NAME | grep -v "VERSION" | sed -n '2p' | cut -f2 -d\")
# echo $NOM_DISTRO_C
# Almacena el nombre corto de la Distro detectada.
ID_DISTRO=$(cat /etc/os-release | grep ID | grep -v "VERSION_ID" | grep -v "ID_LIKE" | sed 's/ID=//' | sed 's/"//g')
ID_DISTRO=$(lsb_release -i | awk '{print $3}')
# echo $ID_DISTRO
# Almacena el ID de la Distro detectada.
VER_DISTRO=$(cat /etc/os-release | grep VERSION= | sed -n '1p' | sed 's/VERSION=//' | sed 's/"//g')
VER_DISTRO=$(lsb_release -c | sed 's/Codename://')
# echo $VER_DISTRO
# Almacena el nombre de la versión de la Distro detectada.
ID_VER_DISTRO=$(cat /etc/os-release | grep VERSION_ID= | sed -n '1p' | sed 's/VERSION_ID=//' | sed 's/"//g')
# ID_VER_DISTRO=$(lsb_release -r | sed 's/Release://')
# echo $ID_VER_DISTRO
# Almacena el ID de la versión de la Distro detectada.
ARQ_DISTRO_COD=$(uname -m)
# echo $ARQ_DISTRO_COD
# Almacenar el Tipo de Arquitectura de la Distro detectada en forma codificada.
ARQ_DISTRO_COD=$(uname -m) ; if [[ "$ARQ_DISTRO_COD" = "x86" ]]; then ARQ_DISTRO_HUM=32; else ARQ_DISTRO_HUM=64; fi
# echo $ARQ_DISTRO_HUM
# Convertir el Tipo de Arquitectura de la Distro detectada en forma codificada a forma humana.
VER_KERNEL=$(uname -r)
# echo $VER_KERNEL
# Almacenar el Nombre del Arquitectura de la Distro detectada.
VERSION_BASH=$(bash --version | grep bash | awk '{print $4}')
# echo $VERSION_BASH
# Almacenar la Versión del Bash Shell.
Если вы хотите узнать больше о «Shell Scripting», перейдите по этой ссылке «Базовое руководство по созданию сценариев BASH для начинающих« y если вы хотите узнать больше о сценариях оболочки в нашем блоге, вы можете ознакомиться с другими нашими публикациями по этой теме, нажав здесь: Сценарии DesdeLinux.
Очень хорошо! Очень полезно! Вторая часть?
Большое спасибо за ваш комментарий! Постараюсь сделать вторую часть ...
этот блог esxelente не особо изучал его, но я очень доволен тем, что публикуется
Спасибо Fraciel за положительный отзыв о блоге и публикациях!