(Alessandro, n�o me leva a mal com o coment�rio abaixo, estou apenas fazendo
uma referencia a uma discuss�o n�o muito antiga.)
Eita n�s, o cara escreve no assunto do e-mail _essa � f�cil_ e eu chego a
conclus�o que realmente damos esmolas demais...
Ele mesmo assume que a coisa � f�cil e mesmo assim vem at� a lista
perguntar.
> Preciso criar um programinha, arquivo de lote, qualquer coisa no linux.
O Linux n�o tem arquivo de lote, tem shell script (podem _*Parecer*_ a mesma
coisa, mas n�o s�o, o shell script � _MUITO_ mais poderoso).
> A situa��o � o seguinte, preciso sempre alterar uma linha de um arquivo de
> configura��o e restartar o servi�o.
Porque este arquivo n�o pode ser alterado definitivamente?
> Ex do que o programa tem que fazer.
> 01 abrir o arquivo de configura��o
> 02 ir na linha 80
> 03 alterar a linha para (aentrada)
> 04 salvar o arquivo
> 05 fechar o arquivo
> 06 reiniciar o servi�o xpto
Aqui na lista tivemos algumas sugest�es de fazer esse tipo de trabalho
utilizando o _sed_ e o _perl_ se n�o me engano, faz uma busca ou leia a
documenta��o.
Se souber PHP, tamb�m pode utilizar o mesmo. Basta iniciar o script com
#!/caminho/para/php
Agora se for muito complicado, voc� pode gerar dois arquivos de configura��o
e de acordo com a sua necessidade renomear estes arquivos e executar.
> Queria algo assim para digitar no prompt
> /programinha texto a ser mudado
> E executasse estas altera��es..
Isso quer dizer que esse texto pode ser mudado diversas vezes? Bom, neste
caso fa�a com o _sed_, vou te dar um exemplo bom:
Crie um arquivo de configura��o padr�o, exemplo: programa.conf-dist
Dentro deste programa, no lugar da linha que voc� quer alterar coloque uma
string que _*N�O*_ exista igual no resto do arquivo, exemplo: 123321
Agora fa�a um script da seguinte forma:
#------------------------------------------------------------------
# Marcus Lima
# Testado e aprovado
# A nivel de informa��o:
# Conectiva 7
# GNU bash, version 2.04.0(1)-release (i386-conectiva-linux-gnu)
# GNU sed version 3.02.80
#-------------------------------------------------------------------
#!/bin/bash
NSTR=$@
cat programa.conf-dist | sed "s/123321/${NSTR}/g" > programa.conf
# Se ele seguir esta forma de inicializa��o:
service programa start
# Se n�o, utilize a forma de inicializar seu programa que voc� deve saber.
Com esse script, ele sempre ir� gerar um programa.conf novo a partir do
original programa.conf-dist e como utilizei o redirecionamento que
sobreescreve o arquivo existente (programa.conf), voc� n�o precisa se
preocupar em apagar.
- Marcus Lima.
Assinantes em 26/11/2002: 2246
Mensagens recebidas desde 07/01/1999: 191565
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista:
mailto:[EMAIL PROTECTED]