> Voy a poner un ejemplo simple que se repite varias veces, > > verificar si existe o no la linea domain en: > > /etc/samba/smb.comf > > si existe comentarla y agregar una nueva linea que la remplace
Un pequeño ejemplo a base de "sed". Tenemos el script 'smb.sh al que le damos como parámetro el fichero a procesar, en nuestro caso 'smb.conf' linea "domain" sin comentar y 'smb2.conf' con todas las lineas comentadas. El comando sed busca la linea que empiece por "domain", y la sustituye, y en caso de no existir la añade al final, sin modificar el fichero origen y sacando el resultado por la pantalla. Este ejemplo "rápido y sucio" creo te puede valer para lo que deseas realizar. -- smb.conf -- #domain x1.org domain x2.org #domain x3.org #domain x4.org -- /smb.conf -- -- smb2.conf -- #domain x1.org #domain x2.org #domain x3.org #domain x4.org -- /smb2.conf -- -- smb.sh -- #!/bin/sh CONF=${1} DOMAIN=`grep -c "^domain" $CONF` if [ $DOMAIN -eq 1 ];then sed 's/^domain.*/domain yyy.org/' $CONF else cat $CONF echo "domain yyy.org" fi -- /smb.sh -- -- To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20100414155658.7b4c7...@x32