Aprenda o Comando Linux 'em'

o no, lote, atq, e atrm Os comandos do Linux enfileiram, examinam ou excluem trabalhos para execução posterior.

Esses comandos podem não ser instalados por padrão. O método típico de agendamento de tarefas é através cron, não no e seus comandos relacionados.

Como editar o arquivo Linux Crontab para agendar trabalhos

Sinopse

Esses comandos assumem as seguintes formas gerais:

em [-V] [-q fila] [-f arquivo] [-mldbv] HORA
at -c job [job ...]
atq [-V] [-q fila]
atrm [-V] trabalho [trabalho ...]
lote [-V] [-q fila] [-f arquivo] [-mv] [HORA]

Descrição

no comando

o no e lote os comandos lêem os comandos pretendidos da entrada padrão ou de um arquivo especificado que devem ser executados posteriormente, usando o shell definido pela variável de ambiente do usuário CONCHA, o shell de login do usuário ou, finalmente, /bin/sh.

Esses quatro comandos estão inter-relacionados:

  • no: Executa comandos em um horário especificado.
  • atq: Lista os trabalhos pendentes do usuário, a menos que o usuário seja o superusuário; nesse caso, os empregos de todos são listados. O formato das linhas de saída (uma para cada trabalho) é: Número do trabalho, data, hora, classe do trabalho.
  • atrm: Exclui trabalhos, identificados por seu número de trabalho.
  • lote: Executa comandos quando os níveis de carga do sistema permitem; em outras palavras, quando a média de carga cai abaixo de 0,8, ou o valor especificado na invocação de atrun.

Notas de Uso

No permite especificações de tempo bastante complexas. Aceita tempos do formulário HH: MM para executar um trabalho em uma hora específica do dia.

Se essa hora já tiver passado, o dia seguinte será assumido. Você também pode especificar meia-noite,meio-dia, ou hora do chá (16h00) e você pode ter uma hora do dia sufixada com SOU ou PM para correr de manhã ou à noite.

Você também pode dizer em que dia o trabalho será executado, fornecendo uma data no formulário nome do mêsdia com um opcional ano, ou dando uma data do formulário MMDDAA ou MM / DD / AA ou DD.MM.YY. A especificação de uma data deve siga a especificação da hora do dia. Você também pode dar tempos como agora+contarunidades de tempo, onde as unidades de tempo podem ser minutos,horas,dias, ou semanas e você pode dizer no para executar o trabalho hoje, sufixando o tempo com hoje e para executar o trabalho amanhã, sufixando o tempo com amanhã.

Por exemplo, para executar um trabalho às 16h00 daqui a três dias, você faria às 16h. + 3 dias, para executar um trabalho às 10h do dia 31 de julho, você o faria às 10h. 31 de julho e para executar um trabalho à 1h amanhã, você o faria à 1h amanhã.

Para ambos no e lote, comandos são lidos da entrada padrão ou do arquivo especificado com o-f opção e executado. O diretório de trabalho, o ambiente e o umask são retidos desde o momento da invocação.

Um no - ou lote - comando invocado de um suo shell manterá o ID do usuário atual. O usuário receberá o erro padrão e a saída padrão de seus comandos, se houver. O e-mail será enviado usando o comando /usr/sbin/sendmail. Se no é executado a partir de um su shell, o proprietário do shell de login receberá o e-mail.

Superusuários e privilégios

O superusuário pode usar esses comandos em qualquer caso. Para outros usuários, a permissão de uso em é determinada pelos arquivos /etc/at.allow e /etc/at.deny.

Se o arquivo /etc/at.allow existe, apenas os nomes de usuário mencionados nele têm permissão para usar no.

Se /etc/at.allow não existe, /etc/at.deny estiver marcada, todo nome de usuário não mencionado nela tem permissão para usar no.

Se nenhum deles existir, apenas o superusuário terá permissão para usar em.

Um vazio /etc/at.deny significa que todos os usuários têm permissão para usar esses comandos - esta situação é a configuração padrão.

Quando você corre no em uma sessão interativa, pressione Ctrl + D para terminar o no sessão.

Opções

Os comandos usam as seguintes opções opcionais, conforme especificado acima:

  • -V: Imprime o número da versão no erro padrão.
  • -q fila: Usa a fila especificada. Uma designação de fila consiste em uma única letra; designações de fila válidas variam de uma para z. e UMA para Z. o uma fila é o padrão para no e a fila para lote. Filas com letras mais altas são executadas com maior gentileza. A fila especial "=" é reservada para trabalhos em execução no momento. Se um trabalho for enviado para uma fila designada com uma letra maiúscula, ele será tratado como se tivesse sido enviado para lote naquele momento. Se atq recebe uma fila específica, ele só mostrará os trabalhos pendentes nessa fila.
  • -m: Envie um e-mail ao usuário quando o trabalho for concluído, mesmo que não haja saída.
  • -f Arquivo: Lê o trabalho de Arquivo em vez de entrada padrão.
  • -eu: Alias ​​para atq.
  • -d: Alias ​​para atrm.
  • -v: Mostra a hora em que o trabalho será executado.
  • -c: Cats as tarefas listadas na linha de comando para a saída padrão.