![]() |
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.
|
|
google unix.com
|
|||||||
| Forum | Registrera | Forum Regler | Länkar | Album | FAQ | Medlemslista | Kalender | Söka | Dagens inlägg | Markera forum som lästa |
| Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här. |
Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
|
||||
| Tråd | Thread Starter | Forum | Svar | Senaste Inlägg |
| cron? automatisera ett script | hassanj | UNIX for Dummies Frågor & Svar | 8 | 12-22-2007 09:29 |
| Är det möjligt att ha mer än en Cron i shell script? | Yamini Thoppen | AIX | 4 | 12-17-2007 03:23 |
| Cron jobb för Perl-skript | man | UNIX för avancerade & Expertanvändare | 3 | 07-26-2007 01:20 |
| Kan köra skript manuellt, men inte genom Cron? | MadHatter | Shell-programmering och Skript | 4 | 10-19-2005 10:08 |
| Cron Script Q | doublek321 | Shell-programmering och Skript | 2 | 07-06-2004 09:35 |
![]() |
|
|
LinkBack | Thread Tools | Sök i denna tråd | Rate Thread | Visningslägen |
|
|
|
||||
|
Hjälp med script - drivs av cron
Hej,
Jag har ett shell script som körs varje minut för att behandla inkommande filer levereras externt via SFTP till en katalog. Huvudsak skriften fungerar och processer filerna men jag får ett felmeddelande när en ny fil levereras i katalogen. Se mina script nedan. En ny fil levereras varje dag via SFTP från en extern källa som skriptet processer i rätt namnkonventionen och det är sedan importeras till vår databas med hjälp av curl. Vi får en ny fil vid 06:05 varje dag och jag får ett meddelande cron misstag levererats till min postlåda varje morgon. Men om jag sedan gå och ändra skriptet och testa den sedan använda samma fil med cron det kommer att behandla på rätt sätt. Men när jag kommer in på morgonen jag kommer att finna att man har misslyckats igen - mycket frustrerande! Jag har ingen aning om varför det är! Om någon kan föreslå något som kan avhjälpa please let me know. Jag har också bifogat en kopia av felmeddelandet som jag får från Cron. #! / bin / bash TRANSDATA \u003d / home / tsbftp / transaction_data WORKING \u003d / home / tsbftp / arbetstid FILES \u003d $ (ls $ TRANSDATA) IMPORT \u003d / home/arch3ftp/dfn-dev.arch3systems.com/html/import för filen i $ FILES göra # ändra ägare av filen till root - ändra behörigheter för root till full tillgång echo "$ file"> / tmp / formatfile.nfo chown root $ TRANSDATA / "$ file" chmod 777 $ TRANSDATA / "$ file" # Strip ut kontonummer och placera i en variabel AN \u003d $ (grep ^ 00 $ TRANSDATA / "$ file" | cut-c 3-18) # Ställ in aktuellt datum och tid för filnamn konvention och placeras i en variabel CUDA \u003d $ (date +% Y% m% d% k% M% S) # Byt namn på aktuell fil med Format mv $ TRANSDATA / "$ file" $ TRANSDATA / $ ETT "_" $ CUDA.a3i sömn 2 mv $ TRANSDATA / $ ETT "_" $ CUDA.a3i $ WORKING echo $? >> / Tmp / formatfile.nfo cp $ WORKING / $ ETT "_" $ CUDA.a3i $ IMPORT curl-s http://dfn-dev.arch3systems.com/batches/import/ $ AN / $ CUDA gjord exit 0 Som ni ser har jag lagt in sleep 2 mm för att försöka rätta till felet jag och försökte byta namn på filen på plats sedan flytta etc. Se felmeddelande nedan från Cron. / etc / cron.d / format_file.sh: MV: när man flyttar flera filer, senaste argumentet måste vara en katalog Try `mv - Hjälp" för mer information. cp: cannot stat `/ home/tsbftp/working/1539590548547000_20080305": Ingen sådan fil eller katalog Jag alltid få mv fel, men om jag ändra skriptet att göra byta namn på ett annat sätt det kommer att fungera när jag testa det med cron! Men säker nog kommer det att misslyckas när en ny fil kommer i nästa dag! |
|
||||
|
tack för svaret jag förstår vad ur säger men ändå vore process eventualy när filen är klar? eftersom den körs varje minut. Filen kommer inte att behandla, även om jag kör den manuellt på den nya filen som har kommit in även efter att ha väntat ett par minuter. Det är bara när jag har ändrat skriptet något kommer filen processen corectly tills en ny fil visas nästa dag.
Jag ska försöka vad u har föreslagits som jag har slut på idéer. Tack igen. Richo |