![]() |
|
|
google unix.com
|
|||||||
| Forums | Registreer | Forum Regels | Links | Albums | Veelgestelde vragen | Ledenlijst | Kalender | Zoeken | Today's Posts | Markeer forums als gelezen |
| UNIX voor Dummies Questions & Answers Als u niet zeker weet waar je een Unix-of Linux vraag, post het hier. Alle UNIX-en Linux beginners van harte welkom!! |
Meer UNIX en Linux Forum Onderwerpen Misschien vindt u Helpful
|
||||
| Draad | Thread Starter | Forum | Antwoorden | Last Post |
| scp geautomatiseerd script | gholdbhurg | UNIX for Advanced & Expert Gebruikers | 5 | 10-27-2008 01:23 |
| Geautomatiseerde shtudown | joe1967 | Programmeren en Shell Scripting | 5 | 05-29-2007 09:04 PM |
| geautomatiseerde ftp. | onverstoorbaarheid | Programmeren en Shell Scripting | 10 | 05-07-2007 12:52 |
| Geautomatiseerde FTP | shauche | UNIX for Advanced & Expert Gebruikers | 11 | 07-11-2002 03:08 |
![]() |
|
|
LinkBack | Thread Tools | Zoeken in deze Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Als ik wilde een machine naar een specifiek bestand zetten op een ander OS ver over het internet via FTP - en ik wilde het niet automatisch gebruiker intervented, hoe zou ik dat doen?
Gebruik de opdracht PUT? De bestandsnaam en de positie verandert nooit, het wordt overschreven en het systeem aan de andere kant zorgt voor al het vuile werk. Ik heb gewoon de UNIX-server naar FTP, dat een bestand. |
|
||||
|
U kunt een bestand genaamd ". Netrc" in je home directory. Zet deze lijn in. Netrc bestand:
machine servernaam login gebruikersnaam wachtwoord passwordhere Als het klaar is, maak dan een bestand (wij noemen het "ftpcommands") dat de commando's bevat. Bijvoorbeeld: cd / ftp / directory zetten yourfile dag en noem het: # Ftp servernaam <ftpcommands of #! / bin / bash # autoftp.sh ftp-machine <FtpCommand #. / Autoftp.sh Opmerking: chmod 400. Netrc U kunt ook gebruik maken van "verwachten". man verwachten voor meer info HTH |
|
||||
|
Lichte Variatie
Ik krijg steeds deze verzoeken, gedreven me noten.
Nu moet ik in staat zijn om een variabele te zetten. Variabelen laat je niet uit handen goed naar de FTP-commando's verwerken. Any ideas? Voorbeeld: Ik wil deze opdracht in te voeren zetten $ 1.backup.file FTP wordt niet trekken aan de bestandsnaam juist - ik kan niet vinden $ 1.backup.file bestand |
|
||||
|
#! / bin / bash
# autoftp.sh # Use "\ n" te scheiden binnenkomst # En maken gebruik van binaire plaats ascii als je denkt FtpCommand \u003d "cd FTPdirectory \ nascii \ NPUT $ 1.backup.file \ nbye" echo-e $ FtpCommand | ftp-machine echo "$ 1 Ftp'd te computernaam" en uitvoeren van dit script te ftp "today.backup.file" #. / Autoftp vandaag Zorg ervoor dat u het volledige pad op te nemen indien "today.backup.file" bestand is niet in de directoy uit waar je het script uitvoeren. HTH [Edited door mib op 05.11.2001 om 07:29] |
|
||||
|
Wij maken gebruik van variaties op het volgende script in de hele plaats. We ontwierpen een "FTP-server 'geschreven in de Korn shell om alle FTP's tussen verschillende platforms aw verwerken en onze bedrijfscultuur" Enterprise FTP-server (Sterling mailbox)
Alle variabelen zijn vastgesteld voordat een beroep op de FTP. (Momenteel in een plat bestand - en binnenkort in een DB-tabel) Inhoud van DYNAM_FTP.KSH: #! / etc / usr / ksh geassorteerde variabele opdrachten ftp-n-v $ HOSTNAME <<-END Gebruiker $ USERID $ PASSWORD cd $ SRC_DIR lcd $ TARGET_DIR pwd krijgt $ SRC_FILE EINDE De bovenstaande "hier document" dynamisch wordt gebouwd op basis van een controleplan welke bron informatie geeft (IP, ID, wachtwoord, bestandsnaam, enz.) Externe op het bovenstaande: chmod + x DYNAM_FTP.KSH DYNAM_FTP.KSH zich te beroepen op Wij vangen de output van het bovenstaande in een bestand en vervolgens grep voor verschillende fouten .... [Geredigeerd door kornshellmaven op 05.12.2001 om 06:58 PM] |
|
||||
|
Well - probeerde het, en zelfs met dat het nog steeds trys met die ID's zetten in plaats van een variabele
voorbeeld cd $ Src_Dir Het trys te veranderen naar een map / $ Src_Dir Werk niet - alle andere ideeën? Solaris 7 |
|
||||
|
Niet zeker waarom het niet uitbreiden van de variabelen binnen het hier-document - Sla xtrace op om commando's te zien echode terug
Het volgende werkt prima #! / usr / bin / ksh-x DATA \u003d $ AL_DATA ftp-n-v slapdev <<-END gebruiker UserID wachtwoord pwd cd $ DATA pwd EINDE Het maakt niet uit of ik een cd naar $ data of $ AL_DATA (uitvoer variabele) - het wordt uitgebreid OK We hebben ook routines voor de FTP bouwen hier-doc dynamisch exec 4> dynam_ftp.sh print-U4 "#! / usr / bin / ksh-x" print-U4 "ftp-v-n $ DEST <<-END" print-U4 "user $ USER $ PASSWORD" print-U4 "cd $ DATA" print-U4 "pwd" print-U4 "lcd $ SRC_DIR" print-U4 "mget $ FILE_PATTERN" print-U4 "END" chmod + x dynam_ftp.sh dynam_ftp.sh De inhoud van de dynam_ftp.sh, zal het bestand volledig uitgevouwen variabele waarden. Het bovenstaande is misschien een beetje overkill voor uw behoeften. We draaien onder Solaris 7 en |
![]() |
| Bladwijzers |
| Thread Tools | Zoeken in deze Thread |
| Display Modes | Beoordeel deze draad |
|
|