Nesta publicação, exemplos simples de comandos de comando serão explorados que irão complementar as publicações anteriores sobre o assunto que foram especificamente e avançadas com os comandos: grep, awk y sede. Também fazendo uso de outros comandos importantes, como: gato, cortar, eco, classificar, que facilitam a leitura, extração, filtragem e ordenação de informações gerenciadas por outros comandos de nível superior.
Com esses exemplos simples, espera-se que todos aqueles que os estudam atinjam um nível muito mais alto de compreensão deles. que permitem aplicá-los manualmente nos terminais de seus computadores ou de forma automatizada nos scripts que criam para tarefas automatizadas.
Exemplos de gerenciamento de variáveis de tempo
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
Exemplos de gerenciamento de nomes de usuário
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.
Exemplos para gerenciar dados de distribuição
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.
Se você quiser aprender um pouco mais sobre «Shell Scripting», verifique este link «O Manual Básico de Script BASH para Iniciantes« y se você quiser saber mais sobre Shell Scripting em nosso próprio Blog, você pode conferir nossas outras publicações sobre o assunto, clicando aqui: Scripts DesdeLinux.
Muito bom! Muito útil! Segunda parte?
Muito obrigado por seu comentário! Vou tentar fazer a segunda parte ...
Que blog excelente eu não tinha examinado muito nele, mas estou muito satisfeito com o que foi publicado
Obrigado Fraciel pelo seu comentário positivo no Blog e nas publicações!