Você está na página 1de 42

www.CloudCampus.com.

br 1
Red Hat Administration- Aula
04
agendando Tarefas no Linux

• André Stato| tstato@gmail.com


OBJETIVO DE AULA

• Agendar tarefas únicas com o at.


• Agendar trabalhos recorrentes com o cron.
• Agendar trabalhos recorrentes do sistema.
• Gerenciar arquivos temporários.

www.CloudCampus.com.br 3
Tópicos

• Agendar tarefas únicas com o at.


• Agendar trabalhos recorrentes com o cron.
• Agendar trabalhos recorrentes do sistema.
• Gerenciar arquivos temporários.

www.CloudCampus.com.br 4
Agendar tarefas únicas com o at

• O at é uma solução disponível para usuários Red Hat.


• Esta não é uma ferramenta independente, mas sim um
daemon do sistema (atd), com um conjunto de
ferramentas de linha de comandos para poder interagir
com o daemon.
• Por padrão o atd já vem instalado e habilitado por
padrão no Red Hat.
• Usuários incluindo o root, podem criar jobs para o
daemon atd usando a ferramenta de linha de comando
at.

www.CloudCampus.com.br 5
Agendando uma tarefa com o at

• Um novo job pode ser agendando usando o comando at


<DATA-HORA>. O at irá ler os comandos para
execução a partir do prompt de comando, pois o at é um
comando interativo. Quando finalizar de inserir todos os
comandos agendados (1 por vez), digite Ctrl + D, para
gravar o job.
• Quando o comandos for muito grande (script), é possível
redirecionar para entrada padrão do at, como at now
+5min <script.sh.
• O valor <DATA-HORA> permite muitas combinações
poderas, dando bastante flexibilidade e facilidade para
descrever quando um job deverá ser executado.
www.CloudCampus.com.br 6
Agendando uma tarefa com o at

• Tipicamente, começamos com o tempo, exemplo 02:00


pm, 15:59, ou até mesmo teatime, seguindo
opcionalmente data ou número de dias no futuro.
• Alguns exemplos de combinações tha podem ser
usadas estão listadas abaixo. Para ver uma lista
completa, veja a definição de timespec nas referências.
• now +5min
• teatime tomorrow (teatime é 16:00)
• noon + 4days
• 5pm authust 3 2019

www.CloudCampus.com.br 7
Inspecionando e Gerenciando
Tarefas
• Para obter uma visão geral dos trabalhos pendentes
para o seu usuário, use o comando atq ou,
alternativamente, o alias em at –l.

• Acima a imagem exibe 4 colunas para cada trabalho


agendado para ser executado no futuro.
• O job número 28, na primeira linha.
• A data e hora agendada para o job é Mon Feb 2
05:13:00 2015.
• A fila que o job está agendada é a a, na segunda linha
vemos a h. www.CloudCampus.com.br 8
Inspecionando e Gerenciando
Tarefas
• Usuários comuns, podem ver e controlar seus próprios
jobs, o root pode ver e gerenciar todos jobs.
• Para inspecionar os comandos que um job irá executar,
use o comando at -c <JOBNUMBER>. A saidá irá exibir
primeiramente as variáveis de ambiente do job, que
reflete o ambiente do usuário que crio o job, seguido
pelos comandos agendados.

www.CloudCampus.com.br 9
Removendo Jobs

Para removerum job usamos o comando atrm


<JOBNUMBER>.

Referências

at(1) and atd(8) man pages


/usr/share/doc/at-*/timespec

www.CloudCampus.com.br 10
Agendando trabalhos recorrentes
com o cron

• Teoricamente, poder-se-ia criar um job com at, e ao final


do job, fazer um novo re-agendamento. Mas na prática,
não é uma boa ideia. O RHEL vem por padrão com o
daemon crond habilitado e iniciado para agendamento
recorrente.
• O crond é controlado por múltiplos arquivos de
configuração, um por usuário, (editado com o comando
crontab) e os arquivos de agendamento do sistema.
• Quanto saídas dos comandos executados a partir de um
job cron se não redirecionados, o crond tenta enviar por
email para o proprietário do job.
www.CloudCampus.com.br 11
Agendando trabalhos recorrentes
com o cron

• Usuários comuns podem usar o comando crontab para


gerenciar seus jobs. Veja abaixo as opções:

Comando Descrição
crontab -l Lista de jobs para o usuário atual
crontab -r Remove todos os jobs para o usuário atual
crontab -e Edita jobs para o usuário atual
crontab Remove todos os jobs, e substitui pelos jobs lidos em
<arquivo> <arquivo>.

www.CloudCampus.com.br 12
Agendando trabalhos recorrentes
com o cron

• O root pode usar a opção -u <username> para


gerenciar jobs de outros usuários.
• Não é recomendado usar o comando crontab para
gerenciar tarefas do sistema. Em vez disso, os métodos
descritos na próxima seção devem ser usados.

www.CloudCampus.com.br 13
Modos do VIM

• Modo Comando: Este modo, é o padrão. E qualquer


tecla digitada poderá executar um comando, como
voltar, refazer, copiar, recortar, colar entre outros.
• Modo Edição: Como o nome já diz, este modo é usado
para editar o texto, onde temos inserção e substituição.
• Modo Ex: Este modo pode fazer muitas coisas,
normalmente utiliza-se a tecla : a partir do modo padrão,
e um prompt no canto esquerdo inferior será aberto.
Neste prompt podemos passar comandos de salvar,
salvar como, substituição de string, localização e muitas
opções avançadas.
www.CloudCampus.com.br 14
Abrir, editar e salvar arquivos de
texto

Nesta parte do curso iremos ver o seguinte:


• Abrir arquivos de texto.
• Mover o cursor.
• Inserir e substituir texto.
• Salvar Arquivos.
• Usar o Help.

www.CloudCampus.com.br 15
Edição básica

Qual editor que você use, no mínimo são necessários


saber fazer as seguintes tarefas:
• Abrir um arquivo novo ou existente.
• Fazer alterações e/ou inserção de novos textos.
• Salvar o arquivo e sair do editor.

www.CloudCampus.com.br 16
Abrir o Arquivo

• Abrir um arquivo é muito fácil, o argumento seguido do


comando é o caminho e nome do arquivo, por exemplo
para abrir o arquivo chamado /etc/hosts, basta executar
o comando seguido do arquivo: vim /etc/hosts.
• Caso informe o nome de um arquivo que não existe,
então será criado um novo arquivo, e o vim irá informar
[New File], até que o arquivo seja salvo.
• Após abrir o arquivo, você estará no modo
comando. Abaixo a esquerda, você terá informações
sobre o arquivo (nome , número de linhas). No canto
direito inferior, estará linha e posição atual.

www.CloudCampus.com.br 17
Abrir Arquivos

www.CloudCampus.com.br 18
Editando Textos

• Se você já usou vi antes, você deve ter notado que no


modo de comando, a maioria das teclas não faz
exatamente o que você esperaria.
• Isso ocorre porque no modo de comando, as teclas não
são mapeadas para inserir os caracteres que você
pressiona, mas sim para executar comandos como
movimentos de cursor, ações de cópia e colar e muito
mais.

www.CloudCampus.com.br 19
Editando Textos

Para entrar no modo de edição, existem alguns comandos


disponíveis:
Tecla Resultado
i Alterna para o modo edição, e inicia antes da posição corrente do cursor.
a Alterna para o modo edição, e inicia após a posição corrente do cursor.
I Move o cursor para início da linha corrente e alterna para o modo edição.
A Move o cursos para o final da linha corrente e alterna para o modo edição.
R Alterna para o modo substituição, iniciando na posição do cursor. Cada
caractere inserido substituirá o caractere existente.
o Cria uma nova linha abaixo da linha atual, e alterna para o modo edição.
O Cria um nova linha acima da linha atual, e alterna para o modo edição.

www.CloudCampus.com.br 20
Movimentação

• A versão do vi e do vim que vem com o RHEL é


configurada para reconhecer as teclas normais de
movimentação do cursor, assim como teclas como PgUp
end End, tanto no modo edição como no modo
comando. Este não é um comportamento padrão em
toda a instalação do vi. De fato, versões mais antigas do
vi não reconheciam teclas de cursor, e apenas
permitiam que você movesse os cursos de dentro do
modo de comando usando chaves como hjkl..

www.CloudCampus.com.br 21
Movimentação

Abaixo a tabela, algumas das teclas de movimentação,


que poderão ser usadas no modo comando.
Tecla Resultado
h O cursor anda uma posição para esquerda.
l O cursor anda uma posição para direita.
j O cursor desce uma linha.
k O cursor sobe uma linha.
^ Move o cursor para o início da linha corrente.
$ Move o cursor para o final da linha corrente.
gg Move o cursor para primeira linha do documento.
G Move o cursor para última linha do documento.

www.CloudCampus.com.br 22
Importante

• Para sair do modo edição ou EX, basta usar o ESC que


sempre retornará para o modo comando.
• É uma prática comum pressionar o ESC mais de uma
vez para sair do modos edição e EX.

www.CloudCampus.com.br 23
Salvando Arquivos

Salvar arquivos no vim é feito no modo ex. Para entrar


neste modo é necessário pressionar a tecla : (dois pontos)
a partir do modo comando. Após pressionar os dois
pontos, ao na parte inferior será aberto um prompt exibindo
os dois pontos. Deve-se digitar o comando que se deseja e
apertar o enter para que o mesmo seja executado.
Não somente salvar, fechar, e etc usam os modo ex, mas
muitos outros comandos como localização, substituição
com sed, expressões regulares, habilitar realce, entre
muitos outros.

www.CloudCampus.com.br 24
Movimentação

Abaixo a tabela, uma pequena lista de comandos para


salvar e sair do arquivo a partir do modo ex.
Tecla Resultado
:wq Salvar e sair do arquivo atual.
:x Salvar e sair do arquivo atual.
:w Salvar o arquivo atual e voltar ao editor.
:w Salvar o arquivo atual com outro nome ou salvar como.
nome
:q Sair do arquivo atual e do editor.
:q! Sair sem salvar o arquivo atual.

www.CloudCampus.com.br 25
Usando Help

• O Vim vem com uma extensa documentação própria.


Digitando :help a partir do modo comando, irá executar
a primeira tela com informações para navegar na ajuda.
• Ajuda para assuntos específicos você pode obter
digitando :help assunto.
• As telas de ajuda são abertos em novas janelas, e para
fechar deve-se usar o :q.
• Também existe um tutorial disponível. Para acessar
esse tutorial use o comando vimtutor.

www.CloudCampus.com.br 26
Editando com vim

Neste sessão veremos os seguintes itens:


• Usar atalhos.
• Copiar e colar texto.
• Usar busca e substituição.
• Desfazer e Refazer ações.

www.CloudCampus.com.br 27
Movimentando

• Além dos movimentos de único caractere, existem


comandos avançados que auxiliam muito na
movimentação.
• Esses atalhos permitem que o cursor seja movido por
palavra, frase ou parágrafo. Tenha em mente que, ao
contrário dos movimentos normais do cursor, esses
comandos só funcionam no modo de comando e não no
modo de inserção.

www.CloudCampus.com.br 28
Movimentação avançada

Veja abaixo alguns comandos, para navegar por palavras,


entre outros.
Tecla Resultado
w Move o cursor para o início da próxima palavra.
b Move o cursor para o início da palavra anterior.
( Move o cursor para o início da frase corrente ou anterior.
) Move o cursor para o início da próxima frase.
{ Move o cursor para o início do parágrafo corrente ou anterior.
} Move o cursor para o inicio do próximo parágrafo.

www.CloudCampus.com.br 29
Movimentação avançada

• Todos comandos de movimentos podem ser prefixados


por um número, por exemplo 5w, para mover o cursor
cinco palavras para frente, ou 12j para mover 12 linhas
para baixo.
• Cada comando (incluindo a mudança para o modo de
inserção) pode ser repetido um número fixo de vezes,
digitando o número de repetições antes do comando. Na
terminologia vim, isso é chamado de contagem.

www.CloudCampus.com.br 30
Substituindo texto

• O vim permite facilmente substituir grandes (ou


pequenas) quantidade de texto usando um comando de
substituição.
• O comando de mudança funciona pressionando a tecla
c, seguido por um movimento do cursor ou outro
comando; por exemplo, cw para mudar da posição atual
do cursor para o final da palavra atual. O texto a ser
substituído é apagado, e o vim muda para o modo de
inserção.

www.CloudCampus.com.br 31
Substituindo texto

Existem alguns atalhos disponíveis para tornar a edição


ainda mais eficiente:
• Pressionando c duas vezes (cc), será substituído a
linha inteira (ou várias linhas quando prefixadas com um
número). Esse mesmo truque se aplica a vários outros
comandos (como excluir) também.
• A maioria dos comandos de movimento pode ser
prefixada com i ou a. Por exemplo, o ciw substituirá
toda a palavra atual, e o caw fará o mesmo, mas
incluindo qualquer espaço em branco antes e depois da
palavra.

www.CloudCampus.com.br 32
Substituindo texto

• Para substituir até o final da linha pode-se usar o c$, ou


ainda o C. ( Esse atalho se aplica a vários comandos
como por exemplo deletar usando o $)
• Para substituir apenas um caractere debaixo do cursor,
pressione o r seguido do novo caractere.
• Para alterar o case (Minúsculo – Maiúscula), posicione o
cursor sobre a letra e use o caractere ~.

www.CloudCampus.com.br 33
Deletando texto

Deletar texto funciona da mesma forma que o substituir. O


comando para deletar é o d, e todos movimentos validos
para alterar o texto se aplica a deletar , incluindo D para
deletar a linha toda, o mesmo se aplica para dd, que faz o
mesmo que o D.
Para deletar apenas um caractere sob o cursor, use x.

www.CloudCampus.com.br 34
Copiar e Colar no Vim

O VIM usa uma terminologia ligeiramente diferente para


descrever a operação de copiar e colar do que a maioria
das pessoas usa. Uma operação de cópia é chamada de
yank e colar é chamada de put. Isso é refletido nos
comandos do teclado atribuídos a essas operações: yank é
y seguido por um movimento e as operações de colar são
realizadas com p e P.
As operações de yank (copiar) seguem o mesmo padrão
das de substituição e deleção. Opcionalmente é possível
digitar números de repetição, seguidos por y, e seguido
pelo movimento, como w para palavra, $ para final de
linha, ou simplesmente outro y para copiar a linha inteira.
www.CloudCampus.com.br 35
Copiar e Colar no Vim

Vejamos alguns exemplos:


• 5yw
• 2yy
• Yiw
Colar é feito com o caractere p e P. Com o caractere p,
será colado antes da posição do cursor, enquanto P irá
colar depois da posição do cursor. Como vistos em outros
comandos, o put suporta números de repetição e
movimentação.

www.CloudCampus.com.br 36
Modo Visual

O vim também vem com o Modo Visual (selecão). Depois


de entrar no modo visual (indicado por - -VISUAL- - na
régua), todos os movimentos do cursor começarão a
selecionar o texto. Quaisquer comandos de alteração,
deleção ou yank emitidos no modo visual, não precisam da
parte de movimento do cursor, e afetará o texto
selecionado. Basta apenas o comando para tal.
Modo visual vem em três formas diferentes. Selecionar
caractere usa o v, selecionar linhas use o V, e selecionar
blocos use o Ctrl + V.

www.CloudCampus.com.br 37
Busca

A pesquisa no documento atual pode ser iniciada de duas


maneiras: pressionando / para buscar a partir da posição
do cursor ou pressionando ? para pesquisar para trás a
partir da posição atual do cursor. Depois de entrar no modo
de pesquisa, uma expressão regular pode ser digitada
para ser procurada e pressionando Enter irá pular para a
primeira coincidência (se existir).
Para localizar a próxima ou anterior coincidência, use n e
N respectivamente.

www.CloudCampus.com.br 38
Busca e Substituição

Busca e substituição no vim é implementado no modo ex,


e usa a mesma sintaxe usada com o sed para busca e
substituição, incluindo a capacidade de fazer buscas
usando expressões regulares:

Intervalo/expressão/string/flags

Intervalo pode ser a número da linha (42), um range de


números de linhas (1,7 que significa da linha 1 à 7), termos
de busca, % para todas as linhas no documento (Se não
informado nada, ira buscar somente na linha atual).
www.CloudCampus.com.br 39
Busca e Substituição

Duas flags muito comuns são as flags g, para habilitar


substituição em mais de uma ocorrência por linha, e a flag
i, para que a busca não seja case sensitiva .

www.CloudCampus.com.br 40
Exemplo de Busca e Substituição

Por exemplo, para buscar toda ocorrência da palavra cat e


substituir por dog em todas as linhas, independente do
caso, mas apenas se for uma palavra completa, e não
similar como por exemplo catalog, podemos usar o
seguinte comando.

:%s/\<cat\>/dog/gi

www.CloudCampus.com.br 41
Desfazer e Refazer

O vim permite que seja desfeito ou refeito qualquer


operação ou digitação. Para desfazer utilizamos a tecla u
(Undo), e para refazer refazer o que foi desfeito.
Esse efeito de desfazer ou refazer, pode ser feito por
várias vezes, voltando até o inicio de trabalho com o texto
na mesma sessão.

www.CloudCampus.com.br 42

Você também pode gostar