você está aqui: Home  → Arquivo de Mensagens

Ebook Gratuito: Dá para fazer em Shell?, com o Prof. Julio Neves

O comando slice

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 21 de Junho de 1997

O comando slice comando incorpora toda a funcionalidade dos comandos split e csplit. Ao contrário dos comandos split e csplit, o comando slice não é padrão em sistemas Unix. Ele faz parte da distribuição de utilitários para unix, chamada unix-c, que infelizmente não se encontra mais disponível. Mas não se preocupe, ao final desta dica eu incluo um link para você baixar o código fonte do programa.

Os exemplos abaixo ilustram claramente o poder e facilidade de uso deste comando:

1) Divisão de uma mailbox em vários arquivos contendo uma mensagem cada:

$ slice -f mailbox -m
$ ls
mailbox:1995-05-02.14:28     mailbox:1996-12-10.10:04:47
mailbox:1995-05-24.13:35:43  mailbox:1997-02-06.09:00:15
mailbox:1995-05-24.13:40:04  mailbox:1997-02-26.09:42:23

São criados vários arquivos iniciados por "mailbox:" e os números que se seguem identificam a data da mensagem.

2) Divisão de um arquivo sempre que for encontrada a string ###. A string ### deve ser eliminada (diretiva -x) dos arquivos resultantes:

$ slice -f arq1 -e "###" -x

Além disto, o nome dos arquivos gerados pode ser configurado através de algumas diretivas aceitas pelo comando slice. Caso o arquivo original contenha as linhas:

arq1

—---- ARQ1
abcdefghijklmno
—---- ARQ2
abcdefghijklmno
—---- ARQ3
abcdefghijklmno
—---- ARQ4
abcdefghijklmno
—---- ARQ5
abcdefghijklmno
—---- ARQ6

O comando abaixo

$ slice -f arq1 -e "------" -x x.#2
$ ls
arq1  x.ARQ1  x.ARQ2  x.ARQ3  x.ARQ4  x.ARQ5  x.ARQ6

Os arquivos gerados receberam o prefixo x. e o sufixo é o segundo campo (#2) da linha que preencheu os requisitos para divisão dos arquivos, indicado pelo parâmetro (-e "---<CUT>---"), em nosso caso a string ARQx, onde x varia de 1 a 6.

O código fonte deste comando você pode baixar a partir do repositório da Dicas-L. Você precisará compilá-lo para uso em seu computador pessoal ou servidor.

Este texto foi revisado e atualizado em 12 de julho de 2020.



Veja a relação completa dos artigos de Rubens Queiroz de Almeida