Newsgroup: it.comp.os.unix
Titolo: URGENTE: Mi serve un aiuto! (Sendmail e domini)

Ho problemi con sendmail! Ma va :). Solo che ancora non ho trovato
risposte nel sul sito ne nelle faq!
Premesso che sendmail funziona correttamente in locale (cioe' msg spediti
a utenti interni arrivano senza problemi), i problemi insorgono quando
cerco di inviare un messaggio ad un sistema remoto (ad es.. 
tin.it
 :)).
Il mio sistema e' singolo, e per tanto ha solo l'hostname senza dominio.
Sendmail all'avvio si lamentava per l'impossibilita' di risolvere il
dominio e quindi ho fatto una cosa bastarda, ho messo un alias per il
corrente sistema (di nome ciao).
nel file /etc/hosts ora ho una riga del genere
192.169.1.1	ciao ciao.localdomain
Nemmeno a dirlo.. ora sendmail tace! Ma haime' non invia i messaggi ad di
fuori del sistema. Vi posto qui il messaggio di errore/ritorno:
The original message was received at Sun, 12 Nov 2000 23:12:15 -0100 (GMT)
from ciao@localhost
   ----- The following addresses had permanent fatal errors -----
unut...@tin.it
   ----- Transcript of session follows -----
550 unut...@tin.it... Host unknown (Name server: mailhost.localdomain:
host
not found)
E mi dice (vi risparmo le tonnettate di msg) che non trova
mailhost.localdomain!
E qui il dubbio... manca il dominio! Spulciando 
sendmail.cf
 noto una riga
interessante:
# "Smart" relay host (may be null)
DSmailhost.$m
Ora... non ho capito come funziona questo cavolo di file di
configurazione :), e' possibile utilizzare questa riga per settare un
alias al sistema corrente... o meglio:
=Cosa devo fare per settare un dominio su questo sistema?= un dns? un
nis? non c'e' un modo per avere un dominio fittizio senza la necessita'
di settare un server? (come ho fatto io con l'alias ad es)

di settare un server? (come ho fatto io con l'alias ad es)
Intanto che sistema e' ?
Linux, SCO, Sun ....
Poi se vuoi risolvere i domini esterni dovrai poterti connettere con un DNS
che ti dia informazioni sul "mondo"
altrimenti all'inteno del tuo PC nessuno sa' chi è 
qualc...@tin.it
Ciao !
Ivo

alias al sistema corrente... o meglio:
Chiaro!!!
Se hai una macchina che spedisce la posta fuori,
 supponiamo si chiami "mailinternet"
e vuoi che il tuo indirizzo sia "
i...@mioposto.it
"
avrai:
===========================
# site hiding: local sender identified as user@my_site
# instead of ser@my_host
DYmioposto.it
# class w defines aliases for the local host
# Cw
# macro L defines the "local domain" to which you connect
# directly for SMTP mail
DLmioposto.it
# class S defines hosts to which you connect directly for SMTP mail
FS/etc/hosts.smtp %s
# class U defines known direct UUCP connections
FU|/usr/bin/uuname %s
# UUCP relay for unresolved ! addresses (via UUCP)
#DU
# UUCP relay for unresolved ! addresses (via SMTP)
DWmioposto.it
# SMTP relay for unresolved @ addresses
DSmailinternet
# X.400 relay if X.400 delivery agent is not local
DXmailinternet
 
==========
ciao,
g.

Buongiorno a tutti,
avrei bisogno di un grosso aiuto, dovrei rinominare una serie di file in
ambiente Unix, e siccome sono alle prime armi, mi hanno suggerito di usare
il comando mv. I file da rinominare sono una trentina e lo devo fare per 5
volte.
I file sono in questo formato:
da nomefile100100 a nomefile1001.ext
da nomefile100200 a nomefiel1002.ext
"
"
"da nomefile103000 a nomefile1030.ext
Mi potete eseere di aiuto senza ogni volta usare il comando mv per tutti e
trenta i file?
Grazie!

 "da nomefile103000 a nomefile1030.ext
Se ho capito bene la regola una delle soluzioni sarebbe:
for i in 100*
do
echo $i |awk '{print "mv " $0 " nomefile" substr ($0,4)".ext";}'
done
Così stampi i comandi , comodo per controllare come sarà eseguito
per rinominare i file aggiungi al ultima riga | sh
("done" diventa "done|sh")
buon divertimento
camil

 "da nomefile103000 a nomefile1030.ext
i=0; while [ $i -lt 3 ]; do 
        j=0; while [ $j -lt 10 ]; do 
                mv nomefile10$i$j00 nomefile10$i$j
                j=$(( $j +1 ))
        done
        i=$(( $i + 1 ))
done

da nomefile100200 a nomefiel1002.ext
Se usi la ksh come tutte le persone con un minimo di senno:
for f in nomefile*00    #...che suppongo si espanda alla tua lista di files
do mv $f ${f%00}.ext
done
Il "trucchetto" degno di nota è che ${f%pattern} significa:
$f dopo aver tolto alla fine la prima stringa che ha un match con "pattern"
g.