Escolar Documentos
Profissional Documentos
Cultura Documentos
Canivete Shell PDF
Canivete Shell PDF
Operadores Aritmticos
+
*
/
%
**
Adio
Subtrao
Multiplicao
Diviso
Mdulo
Exponenciao
==
!=
>
>=
<
<=
Operadores de Atribuio
=
+=
-=
*=
/=
%=
++
--
Operadores Lgicos
Variveis especiais
Operadores Relacionais
Igual
Diferente
Maior
Maior ou Igual
Menor
Menor ou Igual
Operadores de BIT
<<
>>
&
|
^
~
!
Deslocamento esquerda
Deslocamento direita
E de bit (AND)
OU de bit (OR)
OU exclusivo de bit (XOR)
Negao de bit
NO de bit (NOT)
$0
$1
...
$9
${10}
...
$#
$*
$@
Varivel Miscelnia
$$
$!
$_
$?
Expanso de variveis
<<=
>>=
&=
|=
^=
Deslocamento esquerda
Deslocamento direita
E de bit
OU de bit
OU exclusivo de bit
Redirecionamento
Operador Ao
<
>
2>
>>
2>>
|
2>&1
>&2
>&2>&3<>arq
<<FIM
<<-FIM
<(cmd)
>(cmd)
Sintaxe
${var:-texto}
${var:=texto}
${var:?texto}
${var:+texto}
Sintaxe
${var}
${#var}
${!var}
${!texto*}
${var:N}
${var:N:tam}
${var#texto}
${var##texto}
${var%texto}
${var%%texto}
${var/texto/novo}
${var//texto/novo}
${var/#texto/novo}
${var/%texto/novo}
Expanso Condicional
Blocos e agrupamentos
Sintaxe Descrio
"..."
'...'
$'...'
`...`
{...}
(...)
$(...)
((...))
$((...))
[...]
[[...]]
Exemplo
-b
-c
-d
-e
-f
-g
-G
-k
-L
-O
-p
-r
-s
-S
-t
-u
-w
-x
-nt
-ot
-ef
um dispositivo de bloco
um dispositivo de caractere
um diretrio
O arquivo existe
um arquivo normal
O bit SGID est ativado
O grupo do arquivo o do usurio atual
O sticky-bit est ativado
O arquivo um link simblico
O dono do arquivo o usurio atual
O arquivo um named pipe
O arquivo tem permisso de leitura
O tamanho do arquivo maior que zero
O arquivo um socket
O descritor de arquivos N um terminal
O bit SUID est ativado
O arquivo tem permisso de escrita
O arquivo tem permisso de execuo
O arquivo mais recente (NewerThan)
O arquivo mais antigo (OlderThan)
O arquivo o mesmo (EqualFile)
Testes em variveis
Comparao Numrica
-lt menor que (LessThan)
-gt maior que (GreaterThan)
-le menor igual (LessEqual)
-ge maior igual (GreaterEqual)
-eq igual (EQual)
-ne diferente (NotEqual)
Comparao de Strings
= igual
!= diferente
-n no nula
-z nula
Operadores Lgicos
! NO lgico (NOT)
-a E lgico (AND)
-o OU lgico (OR)
\a
\d
\e
\h
\H
\j
\l
\n
\r
\s
\t
\T
\@
\A
\u
\v
\V
\w
\W
\!
\#
\$
\nnn
\\
\[
\]
Expande para...
Alerta
Data
Escape
Hostname
Hostname
Jobs
Tty
Newline
Return
Shell
Time
Time
At
At
Usurio
Verso
Verso
Working Dir
Working Dir
Histrico
Nmero
ID
Octal
Backslash
Escapes
Escapes
Alerta (bipe)
Data no formato "Dia-da-semana Ms Dia" (Sat Jan 15)
Caractere Esc
Nome da mquina sem o domnio (dhcp11)
Nome completo da mquina (dhcp11.empresa)
Nmero de jobs ativos
Nome do terminal corrente (ttyp1)
Linha nova
Retorno de carro
Nome do shell (basename $0)
Horrio no formato 24 horas HH:MM:SS
Horrio no formato 12 horas HH:MM:SS
Horrio no formato 12 horas HH:MM am/pm
Horrio no formato 24 horas HH:MM
Login do usurio corrente
Verso do Bash (2.00)
Verso+subverso do Bash (2.00.0)
Diretrio corrente, caminho completo ($PWD)
Diretrio corrente, somente o ltimo (basename $PWD)
Nmero do comando corrente no histrico
Nmero do comando corrente
Mostra "#" se for root, "$" se for usurio normal
Caractere cujo octal nnn
Barra invertida \ literal
Inicia uma seqncia de escapes (tipo cdigos de cores)
Termina uma seqncia de escapes
\a
\b
\c
\e
\f
\n
\r
\t
\v
\\
\nnn
\xnn
Lembrete
Alerta
Backspace
EOS
Escape
Form feed
Newline
Return
Tab
Vtab
Backslash
Octal
Hexa
Descrio
Alerta (bipe)
Caractere Backspace
Termina a string
Caractere Esc
Alimentao
Linha nova
Retorno de carro
Tabulao horizontal
Tabulao vertical
Barra invertida \ literal
Caractere cujo octal nnn
Caractere cujo hexadecimal nn
%a
%A
%b
%B
%c
%y
%Y
%m
%d
%j
%H
%M
%S
%s
%%
%t
%n
Descrio
%d
%o
%x
%X
%f
%e
%E
%s
Descrio
Nmero decimal
Nmero octal
Nmero hexadecimal (a-f)
Nmero hexadecimal (A-F)
Nmero com ponto flutuante
Nmero em notao cientfica (e+1)
Nmero em notao cientfica (E+1)
String
Letras do comando ls -l
Letra Lembrete
d
l
b
c
s
p
Directory
Link
Block
Char
Socket
Pipe
Letra Lembrete
r
w
x
X
s
Read
Write
eXecute
eXecute
Set ID
Set ID
sTicky
sTicky
Arquivo normal
Diretrio
Link simblico
Dispositivo de blocos (HD)
Dispositivo de caracteres (modem serial)
Socket mapeado em arquivo (comunicao de processos)
FIFO ou Named Pipe (comunicao de processos)
Permisses do Arquivo (prximos nove caracteres)
Permisso desativada
Acesso de leitura
Acesso de escrita
Acesso de execuo (ou acesso ao diretrio)
Acesso ao diretrio somente
Usurio/grupo para execuo (SUID, SGID)
permisso 'x' ativada
Usurio/grupo para execuo (SUID, SGID)
permisso 'x' desativada
Usurios s apagam seus prprios arquivos
permisso 'x' ativada
Usurios s apagam seus prprios arquivos
permisso 'x' desativada
*
?
[...]
[^...]
{...}
Qualquer coisa
Um caractere qualquer
Qualquer um dos caracteres listados
Qualquer um caractere, exceto os listados
Qualquer um dos textos separados por vrgula
Exemplo
*.txt
arquivo-??.zip
[Aa]rquivo.txt
[^A-Z]*.txt
arquivo.{txt,html}
*
?
[...]
[^...]
...|...
Qualquer coisa
Um caractere qualquer
Qualquer um dos caracteres listados
Qualquer um caractere, exceto os listados
Qualquer um dos textos separados por |
Exemplo
*.txt) echo ;;
arquivo-??.zip) echo ;;
[0-9]) echo ;;
[^0-9]) echo ;;
txt|html) echo ;;
Linux
Cygwin
SystemV AIX
1 HUP
HUP
HUP
HUP
2 INT
INT
INT
INT
3 QUIT
QUIT
QUIT
QUIT
4 ILL
ILL
ILL
ILL
5 TRAP
TRAP
TRAP
TRAP
6 ABRT
ABRT
IOT
LOST
7 BUS
EMT
EMT
EMT
8 FPE
FPE
FPE
FPE
9 KILL
KILL
KILL
KILL
10 USR1
BUS
BUS
BUS
11 SEGV
SEGV
SEGV
SEGV
12 USR2
SYS
SYS
SYS
13 PIPE
PIPE
PIPE
PIPE
14 ALRM
ALRM
ALRM
ALRM
15 TERM
TERM
TERM
TERM
16 URG
USR1
URG
17 CHLD
STOP
USR2
STOP
18 CONT
TSTP
CHLD
TSTP
19 STOP
CONT
PWR
CONT
20 TSTP
CHLD
WINCH CHLD
21 TTIN
TTIN
URG
TTIN
22 TTOU
TTOU
IO
TTOU
23 URG
IO
STOP
IO
24 XCPU
XCPU
TSTP
XCPU
25 XFSZ
XFSZ
CONT
XFSZ
26 VTALRM VTALRM TTIN
27 PROF
PROF
TTOU
MSG
28 WINCH WINCH VTALRM WINCH
29 IO
LOST
PROF
PWR
30 PWR
USR1
XCPU
USR1
31 SYS
USR2
XFSZ
USR2
32 PROF
33 DANGER
34 VTALRM
35 MIGRATE
36 PRE
37 Como obter a listagem: trap -l, kill -l ou killall -l
Veja tambm: man 7 signal
HP-UX
HUP
INT
QUIT
ILL
TRAP
ABRT
EMT
FPE
KILL
BUS
SEGV
SYS
PIPE
ALRM
TERM
USR1
USR2
CHLD
PWR
VTALRM
PROF
IO
WINCH
STOP
TSTP
CONT
TTIN
TTOU
URG
LOST
-
Solaris
HUP
INT
QUIT
ILL
TRAP
ABRT
EMT
FPE
KILL
BUS
SEGV
SYS
PIPE
ALRM
TERM
USR1
USR2
CHLD
PWR
WINCH
URG
IO
STOP
TSTP
CONT
TTIN
TTOU
VTALRM
PROF
XCPU
XFSZ
WAITING
LWP
FREEZE
THAW
CANCEL
LOST
if
for / select
while / until
Meta Nome
Descrio
HUP
if COMANDO
for VAR in LISTA
while COMANDO case $VAR in
. Ponto
Curinga de um caractere
INT
then
do
do
txt1) ... ;;
[] Lista
Casa qualquer um dos caracteres listados
QUIT
...
...
...
txt2) ... ;;
[^] Lista negada Casa qualquer caractere, exceto os listados
ILL
elif COMANDO done
done
txtN) ... ;;
? Opcional
A entidade anterior pode aparecer ou no (opcional)
TRAP
then
*) ... ;;
* Asterisco
A entidade anterior pode aparecer em qualquer quantidade
ABRT
...
esac
+ Mais
A entidade anterior deve aparecer no mnimo uma vez
EMT
else
ou:
{,} Chaves
A entidade anterior deve aparecer na quantidade indicada
FPE
...
for ((exp1;exp2;exp3))
^ Circunflexo Casa o comeo da linha
KILL
fi
$ Cifro
Casa o fim da linha
BUS
\b Borda
Limita uma palavra (letras, nmeros e sublinhado)
Cdigos de retorno de comandos
SEGV
\ Escape
Escapa um meta, tirando seu poder
SYS
| Ou
Indica alternativas (usar com o grupo)
Cdigo Significado
Exemplo
PIPE
() Grupo
Agrupa partes da expresso, quantificvel e multinvel
0
Nenhum erro, execuo terminou OK
echo
ALRM
\1 Retrovisor
Recupera o contedo do grupo 1
1
A maioria dos erros comuns na execuo
echo $((1/0))
TERM
\2 Retrovisor
Recupera o contedo do grupo 2 (segue at o \9)
2
Erro de uso em algum 'builtin' do Shell
URG
.* Curinga
Casa qualquer coisa, o tudo e o nada
126 Comando no executvel (sem permisso)
touch a ; ./a
STOP
?? Opcional NG Idem ao opcional comum, mas casa o mnimo possvel
127 Comando no encontrado ("command not found") echooo
TSTP
*? Asterisco NG Idem ao asterisco comum, mas casa o mnimo possvel
128 O parmetro para o 'exit' no um decimal
exit 1.0
CONT
+? Mais NG
Idem ao mais comum, mas casa o mnimo possvel
128+n 128 + cdigo do sinal que o matou
kill -9 $PPID #exit 137
CHLD
{}? Chaves NG Idem s chaves comuns, mas casa o mnimo possvel
130 O programa interrompido com o Ctrl+C (128 + 2) TTIN
255 Parmetro para o 'exit' no est entre 0 e 255
exit -1
Metacaracteres nos aplicativos
TTOU
IO
Programa
Opcional
Mais
Chaves
Borda
Ou
Grupo
Cdigos de cores (ANSI)
XCPU
awk
?
+
|
()
Cor
Letra Fundo Atributo
Valor Exemplos: ESC [ <N>;<N> m
XFSZ
ed
\?
\+
\{,\}
\b
\|
\(\)
Preto
30
40 Reset
0 ESC[m texto normal (desliga cores)
VTALRM Vermelho 31
egrep
?
+
{,}
\b
|
()
41 Negrito
1 ESC[1m negrito
PROF
emacs
?
+
\b
\|
\(\)
Verde
32
42 Sublinhado 4 ESC[33;1m amarelo
WINCH
expect
?
+
|
()
Amarelo 33
43 Piscando
5 ESC[44;37m fundo azul, letra cinza
INFO
find
?
+
\b
\|
\(\)
Azul
34
44 Reverso
7 ESC[31;5m vermelho piscando
USR1
gawk
?
+
{,}
\<\>
|
()
Rosa
35
45
Na linha de comando:
USR2
grep
\?
\+
\{,\}
\b
\|
\(\)
Ciano
36
46
echo -e '\e[33;1m amarelo \e[m'
mawk
?
+
|
()
Branco
37
47
echo -e '\033[33;1m amarelo \033[m'
perl
?
+
{,}
\b
|
()
php
?
+
{,}
\b
|
()
python
?
+
{,}
\b
|
()
sed
\?
\+
\{,\}
\<\>
\|
\(\)
vim
\=
\+
\{,}
\<\>
\|
\(\)
Cdigos prontos
Condicionais com o IF
i=$(expr $i + 1)
i=$((i+1))
let i=i+1
let i+=1
let i++
Loop de 1 10
Ctrl+A
Ctrl+B
Ctrl+C
Ctrl+D
Ctrl+E
Ctrl+F
Ctrl+H
Ctrl+I
Ctrl+J
Ctrl+K
Ctrl+L
Ctrl+N
Ctrl+P
Ctrl+Q
Ctrl+R
Ctrl+S
Ctrl+T
Ctrl+U
Ctrl+V
Ctrl+W
Ctrl+X
Ctrl+Y
Descrio
Tecla Similar
Home
Delete
End
Backspace
Tab
Enter
Home/End
cat
cut
date
Mostra arquivo
Extrai campo
Mostra data
Opes teis
-n, -s
-d -f, -c
-d, +'...'
diff
echo
find
fmt
grep
head
od
paste
printf
rev
sed
seq
sort
tac
tail
tee
tr
uniq
wc
xargs
Compara arquivos
Mostra texto
Encontra arquivos
Formata pargrafo
Encontra texto
Mostra Incio
Mostra Caracteres
Paraleliza arquivos
Mostra texto
Inverte texto
Edita texto
Conta Nmeros
Ordena texto
Inverte arquivo
Mostra Final
Arquiva fluxo
Transforma texto
Remove duplicatas
Conta Letras
Gerencia argumentos
!
"
#
$
%
&
'
(
)
*
+
,
.
/
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
161
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255