Você está na página 1de 4

APANHADO DE SCRIPTS

#!/bin/bash
clear
x=1
while [ $x -eq 1 ]
do
x=0
printf "\nDigite um caminho válido (diretório) = "
read dir
if [ ! -d "$dir" ]
then
printf "\nDiretório $dir não existe...\n"
x=1
fi
done
cd $dir 2>/dev/null
fi [ $? -ne 0 ]
then
printf "\nNão pude acessar $dir; Verifique as premissões... \n\n"
else
printf "\nLISTANDO NOMES E PREMISSÕESEM OCTAL: \n\n"
for arq in *
do

octal=$(start -c "%a" $arq)


printf "\n$arq --> $octal"
done

fi

printf"\n\n"

//*

explicação do código acima

while [ $<var> <op.relacional> $<var> ]

ou <constante> ou <constante>

do
.
.
.

<bloco repetitivo

.
.
.
done

-d diretório
-e arquivo

existencia da entrada no sistema de arquivos no diretório atual

read diret
cd $dir

.
.
.
read nome
if [ ! -e "$nome"]
then
printf"\n Arq. não existe!"n
else
printf"\n Arq. existe"
fi

rm -fr *.txt (apaga todos os arquivos txt)

jogando numa variável pode ser mais fácil a execução


apaga = $(rm -fr *.txt)
echo apaga

---- 0 --> ok!


? -/
\
---- 1 --> não deu certo!
2 não mostra o erro

#!/bin/bash
clear
printf "\nConteúdo de um diretório..."
cd /home/gerson
for qual in *
do
printf "\n Entrada: $qual"
done
printf"\n\n"
(para ver as entradas do diretório)

e se eu quiser só ver os arquivos .txt?


dita e muda pra *.txt

for qual in *.txt

if [ -d $dir ] (testa se o diretório existe)

if while/for
then do
fi done

> é um redirecionador de saída

cd $div 2>/dev/null
listar números de 1 a 100 (for_1

#!/bin/bash
clear
for a in {1..."$(x)"}
do
printf "\n$a"
done
printf "\n\n"

no terminal

cat > ex_for1

#!/bin/bash
clear
printf "\nExtensão:"
read ext
n=1
for arq in *.$ext
do
$n++
mv *.$ext file_$n.xyz
printf "\n *.xyz"
done
printf "\n\n"

criar 9 arquivos

touch arq{1,2,3,4,5,6,7,8,9}.doc

Você também pode gostar