The UNIX and Linux Forums  
Hello and Welcome-tól az Egyesült Államokat, hogy az UNIX és Linux Forums? Köszönjük, hogy meglátogatta és csatlakozik Globális Közösség.

Go Back   A UNIX és Linux Forums > Top Fórumok > Shell programozás és Scripting
.
google unix.com



Shell programozás és Scripting Post kérdések KSH, CSH, SH, Bash, Perl, PHP, SED, AWK ÉS EGYÉB shell szkriptek és shell script nyelvek itt.

Több, UNIX és Linux fórum témák Ön által talált Hasznos
Szál Thread Starter Fórum Válaszok Utolsó hozzászólás
Év könyvtár létrehozása, dátum alkönyvtárból és archív fájl madhunk A UNIX a dummies Kérdések és válaszok 2 12-13-2007 11:25 AM
Adja meg előző nap, a kezdő dátum a shell script ritzwan0 Shell programozás és Scripting 2 09-25-2006 05:58 PM
Directory Létrehozás dátuma Bab00shka A UNIX a dummies Kérdések és válaszok 2 06-29-2005 10:42 AM
könyvtár létrehozása nevű aktuális dátum flowrats A UNIX a dummies Kérdések és válaszok 2 07-30-2002 11:26 PM
Megközelíthetőség Előző dátum és időpont Coming arunava_maity A UNIX a dummies Kérdések és válaszok 2 05-24-2001 11:41 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Téma eszközök Keresés a téma Rate Thread Megjelenítési módok
  #1 (permalink)  
Old 11-18-2007
sridhusha sridhusha is offline
Regisztrált felhasználó
  
 

Join Date: Sep 2007
Hozzászólások: 16
szeretné létrehozni a könyvtárat a korábbi időpont

Kell egy kis segítség, hogy a teljes az alábbi script:

Dátum1 \u003d `date" +% d "`

# Dátum2 \u003d `expr $ dátum1 - 1`

# DATE3 \u003d $ dátum2 `date" +% m% y ""

DATE4 \u003d `date" +%-os ""

if [$ DATE4 \u003d Mon], majd

Dátum2 \u003d `expr $ dátum1 - 3"

vagy

Dátum2 \u003d `expr $ dátum1 - 1`

fi

cd / data/builds/612hf8/SAS/retail/plan_61/scripts/meserver

DATE3 \u003d $ dátum2 `date" +% m% y ""

mkdir $ DATE3

echo "dir created"

mv *. log $ DATE3

echo "logs átmozgatva $ DATE3 dosszié"



A fenti szkript létrehozza a könyvtárat, az előző napi dátumot.


együtt a fenti szkriptet kimenet, szükségem van, hogyan kell létrehozni hóvégi könyvtárak ez azt jelenti, 30. vagy 31. a dátum. ha tegyük fel, időpont minden hónap 1., ez a forgatókönyv nem egy könyvtár létrehozása a korábbi időpontra 30. vagy 31..

Kérjük, néhány test segítsen nekem, hogy a teljes fenti szkriptet.

I would appreciate your help.

Köszönöm,
Sridhar.
  #2 (permalink)  
Old 11-18-2007
prowla prowla is offline
Csak olvasható
  
 

Join Date: Nov 2007
Posts: 165
Aha - dátum számtani.
Ön tudna állítani egy tömb 28/29/30/31 nap lekérdezések a hónapok és leapyear számításokat.

Én egyszer azt írta, a C nevű programot timecalc. Itt van, ha ez minden használat:
Kód:
/*
 * Name:
 *	timecalc.c
 *
 * Purpose:
 *	Time calculations.
 #
 * Usage:
 *	timecalc [+|-]n [seconds|minutes|hours|days|weeks]
 *
 * History:
 *	050713	GZB	Original.
 *
 */

static char *gsVersion="@(#)timecalc.c GZB 050713";

#include <time.h>
#include <stdlib.h>
#include <sys/time.h>

int gbDebug=0;
int gbVerbose=0;
double gfTimeDiff=0;	/* What to change the time by. */
int giTimeDiff=0;	/* What to change the time by. */
int giTimeUnits=1;	/* Time units scaled to seconds. */
char gsDateSep[10]="/";	/* Date separator. */
char gsTimeSep[10]=":";	/* Time separator. */
char gsDtoTSep[10]=" ";	/* Separator between date & time. */


Usage()
{
	printf("usage: timecalc [+|-]n [seconds|minutes|hours|days|weeks]\n");
	exit(1);
}


CommandArgs(argc,argv)
	int argc;
	char **argv;
{
	int i;

	if (gbDebug) printf("CommandArgs()\n");

	for ( i=1; i<argc; i++ )
	{
		if (gbDebug) printf("%d/%d\n", i, argc);

		switch (*argv[i])
		{
			case '+': gfTimeDiff=atof(argv[i]+1); break;
			case '-': gfTimeDiff=-atof(argv[i]+1); break;
			case 's': giTimeUnits=1; break;
			case 'm': giTimeUnits=60; break;
			case 'h': giTimeUnits=60*60; break;
			case 'd': giTimeUnits=60*60*24; break;
			case 'w': giTimeUnits=60*60*24*7; break;
			case 'D': gbDebug=1; break;
			case 'V': gbVerbose=1; break;
			/* case 'T': *gsDateSep='\0'; *gsTimeSep='\0'; break; */
			case 'T': strcpy(gsDateSep,""); strcpy(gsTimeSep,""); break;
			default: Usage(); break;
		}
	}

	/*
	giTimeDiff *= giTimeUnits;
	if (gbDebug) printf( "%d %d\n", giTimeDiff, giTimeUnits);
	*/

	giTimeDiff = (int)(gfTimeDiff * (double)giTimeUnits);
	if (gbDebug) printf( "%d %f %d\n", giTimeDiff, gfTimeDiff, giTimeUnits);
}


PrintTime(tp)
	struct tm *tp;
{
	printf("%04d%s%02d%s%02d%s%02d%s%02d%s%02d",
		tp->tm_year+1900,
		gsDateSep,
		tp->tm_mon+1,
		gsDateSep,
		tp->tm_mday,
		gsDtoTSep,
		tp->tm_hour,
		gsTimeSep,
		tp->tm_min,
		gsTimeSep,
		tp->tm_sec
		);
}


main(argc,argv)
	int argc;
	char **argv;
{
	time_t	t;
	time_t	tnew;
	struct tm *tp;

	t = (time_t)time((time_t *)0);
	if (gbDebug) printf("Seconds since epoch = %d\n", t);

	CommandArgs(argc,argv);

	tnew = t + giTimeDiff;
	if (gbDebug) printf("Seconds adjusted by %d = %d\n", giTimeDiff, tnew);

	if (gbVerbose)
	{
		tp = localtime(&t);
		PrintTime(tp);
		printf("\n");
		/* printf(" -> "); */
	}

	tp = localtime(&tnew);
	PrintTime(tp);
	printf("\n");
}
Minden szokásos felelősségi nyilatkozathoz, nem garancia, és így-ra vonatkozik!

Alternatív megoldásként megpróbálhatod, és néhány ügyes használni a "cal" (naptári) programot.
  #3 (permalink)  
Old 11-18-2007
Franklin52 Franklin52 is offline Forum Staff  
Moderátor
  
 

Join Date: Feb 2007
Hozzászólások: 4.305
Ellenőrizze a man oldalt a dátum, ha a-d, vagy - az időpont suported akkor valami ehhez hasonlót:

date - date \u003d "1 óra"

Üdvözlettel
  #4 (permalink)  
Old 11-18-2007
sandy0077's Avatar
sandy0077 sandy0077 is offline
Regisztrált felhasználó
  
 

Join Date: Aug 2007
Location: UK
Hozzászólások: 10
lehet kapni az előző napi dátumot a következő parancsot:

DATE_STAMP \u003d "TZ \u003d CST 24 date +% Y% m% d`


Próbálja meg a következő linken:

Ismerkedés tegnap DÁTUMA
  #5 (permalink)  
Old 11-18-2007
sandy0077's Avatar
sandy0077 sandy0077 is offline
Regisztrált felhasználó
  
 

Join Date: Aug 2007
Location: UK
Hozzászólások: 10
Post

Szia,

Használja a következő parancsot kap az előző napi dátumot.

DATE_STAMP \u003d "TZ \u003d CST 24 date +% Y% m% d`
  #6 (permalink)  
Old 11-19-2007
sridhusha sridhusha is offline
Regisztrált felhasználó
  
 

Join Date: Sep 2007
Hozzászólások: 16
szeretné létrehozni a könyvtárat a korábbi időpont

Thanks Sandy .... a munka.

de én nem vagyok megérteni TZ \u003d CST 24, én soha nem láttam a Dátum man oldalt is.

Köszönet újra.

Üdvözlettel,
SRdhar.
  #7 (permalink)  
Old 11-19-2007
Ygor's Avatar
Ygor Ygor is offline Forum Staff  
Moderátor
  
 

Join Date: Oct 2003
Helyszín: -31.96,115.84
Hozzászólások: 1.408
Az idő-zone "trükk" nem megbízható. Vessen egy pillantást a Gyakran ismételt kérdések.
Closed Thread

Könyvjelzõk

Téma eszközök Keresés a téma
Keresés a téma:

Részletes keresés
Megjelenítési módok Rate this thread
Rate this thread:

Posting szabályzat
Ön nem post new threads
Ön nem post válaszok
Ön nem post Csatolmányok
Ön nem szerkeszteni az üzeneteidet

BB kód van Be
Smilies vannak Be
[IMG] kód Be
HTML kód Ki
Trackbacks vannak Be
Pingbacks vannak Be
Refbacks vannak Be




Minden idő GMT -4. Az idő most 12:01 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Nyelvre lefordítva Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
A UNIX és Linux Fórum Tartalom Copyright © 1993-2009. Minden jog Reserved.Ad menedzsment RedTyger

Content Relevant URLs by vBSEO 3.2.0