Seguinte pessoal,

Estou criando um shell script para ficar no lugar de um binario existente.
Ou seja, ele vai assumir o que for passado, e encaminhar para o antigo.

Explico melhor:

binario -> irá se chamar binario.antigo
shell_script.sh (o que estou criando) -> irá se chamar binario

Quando algum programa executar "binario", o que vai ser executado é o
meu script, fazendo alguns tratamentos, e passando os parâmetros
recebidos para binario.antigo.

Ou seja

Antes da mudança:
$ binario -a "teste1 teste2" -b teste3 -c "teste4 teste5"
irá exectar o binario, sendo:
$1 = -a
$2 = teste1 teste2
$3 = -b
$4 = teste3
$5 = -c
$6 = teste4 teste5

Depois da mudança:
$ binario -a "teste1 teste2" -b teste3 -c "teste4 teste5"
irá exectar o binario.antigo, sendo:
$1 = -a
$2 = teste1
$3 = teste2
$4 = -b
$5 = teste3
$6 = -c
$7 = teste4
$8 = teste5

Conteúdo do shell script (por enquanto só para testes):
----
#!/bin/bash
binario.antigo $* && {
  tratamento1
  tratamento2
  etc
}
----

O problema é na passagem dos parâmetros para o binário.antigo ($*),
pois as variáveis que estão "agrupadas" (teste1 e teste 2), irão
"desagrupar".
Como resolvo esse problema?

Acho que consegui explicar, ou enrolei demais?

Abraços,
Rodrigo.

Responder a