Exercício Prático LPIC 12
Publicado por Wagner Souza em 14/05/2015
[ Hits: 3.694 ]
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
Baixando arquivos de servidores FTP via linha de comando
Erro ao formatar partições EXT4 no OpenSUSE [Resolvido]
Shell Script nosso de cada - Episódio 2
Como tirar print de sua tela de login, bloqueio, apresentação e área de trabalho (KDE)
Iniciando máquina virtual "automaticamente" no VirtualBox
Direcionando saídas de comandos
mii-tool ou ethtool: Qual usar?
Nenhum comentário foi encontrado.
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Instalando partes faltantes do Plasma 6
Adicionar botão "mostrar área de trabalho" no Zorin OS
Como montar um servidor de backup no linux
Estou tentando ser legalista, mas tá complicado! (9)
espelhar monitores nao funciona (2)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (1)









