Escolar Documentos
Profissional Documentos
Cultura Documentos
DCTI
Sistemas Operativos
Redirecionamento
Expansão
> file.txt
............................
output
para
file.txt
*.txt
...............................
ficheiros
com
extensão
.txt
>> file.txt
.....................................
idem,
acrescentar
a*
.............................................
ficheiros
começados
por
a
2> erros.txt
......................
erros
para
erros.txt
*x*.sh
.........................
contendo
um
x
e
extensão
.sh
&> file.txt
.........
output
e
erros
para
file.txt
?x?
.............................
com
3
letras,
tendo
um
x
no
meio
Expressões
Variáveis
i=$(( 2+3 ))
i=1 i=$(( i+1 ))
j=ABC echo $((i*100))
echo "i=$i e j=$j"
s="os crimes do "$j d=$(date)
echo "data atual: $d"
Argumentos
read
$#
...................................................
numero
de
argumentos
$0
...................................
corresponde
ao
nome
do
script
echo -n "diga um número: "
$1
.........................................................
primeiro
argumento
read x
echo "o dobro de $x é $((2*x))"
$2
..........................................................
segundo
argumento
$*
........................................................
todos
os
argumentos
test
(condições)
if
[ $x -ge $y ]
.................................
se
$x
é
>=
que
$y
echo -n "diga um número: " outros:
-‐gt,
-‐lt,
-‐le,
-‐eq,
-‐ne
read x
if [ $x -gt 10 ]; then [ -f $fich ]
.................................
se
o
ficheiro
existe
echo "é maior que 10" [ ! -f $fich ]
..................
se
o
ficheiro
não
existe
elif [ $x -lt 10 ]; then [ -d $fich ]
....
se
o
ficheiro
existe
e
é
directoria
echo "é menor que 10" [ "$x" = "sim" ]
....
se
$x
contém
o
valor
"sim"
else [ -n "$x" ]
........................................
se
$x
não
é
vazia
echo "é mesmo o 10"
fi
Ciclos
de
contagem
i=0
while
while [ $i -lt 10 ] ; do
guess=$(( RANDOM % 10 )) echo $i
echo "Quando adivinhar termina." i=$(( i + 1))
x=0 done
while [ $x -ne $guess]; do
echo -n "diga um numero: " ou
read x
done for (( i=0; i<10; i++)) {
echo "certo." echo $i
}
for
for f in 1 2 3 a b c; do
Output
de
comando
echo "Elemento: "$f d=$(date "+%f")
done echo a data de hoje é $d
for f in *.c; do for f in *.c; do
echo "Elemento: "$f cp $f $f-$d$
done done