Exercício Prático LPIC 12
Publicado por Wagner Souza em 14/05/2015
[ Hits: 3.722 ]
Blog: https://medium.com/@souzaw
#!/bin/bash
# Script que recebe como parâmetro o diretório e informa a quantidade
# de sub-diretórios, arquivos ocultos ou não ocultos, porcentagem usada
# do disco rígido pelo diretório e informa uma saudação para quem está
# executando o script
#------------- / SEÇÃO 1 - Variáveis / -------------
# Esta primeira variável, com o auxílio do comando
# grep, vai mostrar todos os arquivos de um dire-
# tório exceto os sub-diretórios. No linux, a saída
# do comando ls -l vai listar todas as informações
# contidas em um diretório. O sinal de ( - ) refere-se
# a arquivos e a letra d refere-se a diretórios. O grep
# retorna tudo o que não for diretório
LIST_ARQ=$(ls -l $1 | grep -v ^d | wc -l)
# Listando arquivos ocultos em um diretório
LIST_ARQ_OCULTOS=$(find $1 -maxdepth 1 -type f -name '.*' | wc -l)
# Aqui eu só vou listar os diretórios excluindo do
# filtro os arquivos
LIST_DIR=$(ls -l $1 | grep -v ^- | wc -l)
# Informa o espaço em disco usado pelo diretório.
# O comando sed vai eliminar a primeira linha que
# não vai nos interessar
USO_DISCO=$(df -h $1 | cut -c34-38 | sed '1d')
# Esta variável será usada na instrução Case para
# dar a saudação ao usuário que está executando o
# script
HORA=$(date +%H)
#----------------- / FIM SEÇÃO 1 / -----------------
#------- / SEÇÃO 2 - Informações de Exibição / ------
# A instrução a seguir faz um teste para saber se foi
# passado algum parâmetro ao script. Caso não, o mesmo
# será encerrado
if [ $# -ne 1 ]
then
echo Você não passou nenhum parâmetro!
exit 1
fi
# Informa uma saudação ao usuário que esta
# executando o script
echo "*************************"
case $HORA in
0? | 1[01]) echo "Bom Dia $USER"
;;
1[2-7] ) echo "Boa Tarde $USER"
;;
* ) echo "Boa Noite $USER"
;;
esac
echo "*************************"
echo "Total de arquivos: $LIST_ARQ"
echo "Total de arquivos ocultos: $LIST_ARQ_OCULTOS"
echo "Total de diretórios: $LIST_DIR"
echo "Espaço em disco usado pelo diretório: $USO_DISCO"
#----------------- / FIM SEÇÃO 2 / -----------------
Algoritmo para converter minutos em hora
Configurações de rede com o comando ip
Problemas apt-get update (GPG error)
Instalando FreeRADIUS no Debian/Ubuntu - Versão atual
Compartilhar Linux X Linux (Virtualbox)
Nenhum comentário foi encontrado.
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica
Instalar Dual Boot, Linux+Windows. (8)
Eaí? Já programou no windows? (2)
Erro ao enviar arquivos para o Storage Synology NAS (0)
Conky, alerta de temperatura alta (17)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









