The UNIX and Linux Forums  
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.

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



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
Förutom i sh skal cfg UNIX for Dummies Frågor & Svar 1 09-28-2008 03:53
Enkel dessutom hjälp. Bandit390 Shell-programmering och Skript 3 09-23-2008 02:46
Dessutom e-lalit Shell-programmering och Skript 2 08-06-2008 05:58
Förutom problemet onlyroshni Shell-programmering och Skript 2 12-10-2007 02:11
flytande punkt utöver ravi raj kumar Shell-programmering och Skript 8 12-22-2006 02:47

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 10-13-2008
ali560045's Avatar
ali560045 ali560045 is offline
Registered User
  
 

Join Date: oktober 2007
Inlägg: 328
datum Dessutom

Jag har ett script som kallas date_add.sh skriven i k_shell

Min shell script kravet är att den godtar en dag från användaren i formatet ÅÅÅÅ-MM-DD och sedan visar alla de 15 dagar senare dag availaible under innevarande år

om dagen emot från användaren 2008-10-13, sedan o / p sholud vara
2008-10-28
2008-11-12
2008-11-27
2008-12-12
2008-12-27
-------------------------------------------------- ---------------------

Hur man lägger in denna logik i en loop? Även hur du konverterar Epoch dagar i formatet ÅÅÅÅ-MM-DD

Current_day \u003d "perl -e "print int (time/86400 );'`-------------------- 16145

men under kommandot inte fungerar

perl -e '@ d \u003d Localtime ((stat (flytta)) [9]); printf "% 4d-% 02d-% 02d \ n", $ d [5] 1900, $ d [4] 1, $ D [3] "Current_day

Senast redigerad av ali560045; 10-13-2008 vid 06:44..
  #2 (permalänk)  
Old 10-13-2008
ali560045's Avatar
ali560045 ali560045 is offline
Registered User
  
 

Join Date: oktober 2007
Inlägg: 328
hjälp i dag script

under mitt manus. Faktiskt i mitt manus im med det aktuella datumet och sedan lägga till 15 dagar till den.
-------------------------------------------------- ------------------------

#! / bin / ksh

Current_day \u003d "perl -e "print int (Temne)," "
echo $ Current_day

count \u003d 0
count \u003d `expr $ Current_day + 1296000"
echo $ count

perl -le "print scalar Localtime (" $ count "');'

perl -e '@ d \u003d Localtime ((stat (flytta)) [9]); printf "% 4d-% 02d-% 02d \ n", $ d [5] 1900, $ d [4] 1, $ d [3] "" $ count "
-------------------------------------------------- ------------------------

de senaste kommando som konverterar $ count värde i formatet ÅÅÅÅ-MM-DD inte fungerar. plz hjälpa mig i detta?
  #3 (permalänk)  
Old 10-13-2008
jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: februari 2004
Ort: NM
Inlägg: 5.719
Stat verk på filer, inte epok sekunder.
  #4 (permalänk)  
Old 10-13-2008
ali560045's Avatar
ali560045 ali560045 is offline
Registered User
  
 

Join Date: oktober 2007
Inlägg: 328
ok. så hur man kan omvandla värdet av det under kommando i formay ÅÅÅÅ-MM-DD så jag skulle få o / p enligt 2008-10-28

perl -le "print scalar Localtime (" $ count "');'
  #5 (permalänk)  
Old 10-13-2008
jim McNamara jim mcnamara is offline Forum Staff  
...@...
  
 

Join Date: februari 2004
Ort: NM
Inlägg: 5.719
Kod:
#!/bin/ksh
tictock()
{ 
perl -e '
 $now = time;
 $increment = 1296000;
    ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($now);
 $year += 1900;
 
 for($i=0, $thisyear = $year ; $thisyear==$year ; $i++)
 {
    printf ("%4d-%02d-%02d ", $year, $mon, $mday);
 	$incr=($increment * $i) + $now;
    ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime($incr);
    $year += 1900;
    $mon += 1;
  
 }
 '
}

set -A arr $(tictock )
let i=0
while [[ $i -lt ${#arr[*]} ]]
do 
    print ${arr[i]}
    i=$(( i + 1))
done
  #6 (permalänk)  
Old 10-13-2008
cfajohnson's Avatar
cfajohnson cfajohnson is offline Forum Advisor  
Shell programmerare, författare
  
 

Join Date: mars 2007
Ort: Toronto, Kanada
Inlägg: 2361
Citat:
Ursprungligen postat av ali560045 View Post
Jag har ett script som kallas date_add.sh skriven i k_shell

Min shell script kravet är att den godtar en dag från användaren i formatet ÅÅÅÅ-MM-DD och sedan visar alla de 15 dagar senare dag availaible under innevarande år

om dagen emot från användaren 2008-10-13, sedan o / p sholud vara
2008-10-28
2008-11-12
2008-11-27
2008-12-12
2008-12-27
-------------------------------------------------- ---------------------


Kod:
. date-funcs
year=$( date +%Y )

_DATESHIFT=$1
while :
do
  _dateshift $_DATESHIFT 15
  [ ${_DATESHIFT%%-*} -ne $year ] && break
  printf "%s\n" "$_DATESHIFT"
done
Den datumbaserade funcs bibliotek med skal funktioner finns på The Dating Game.
Closed Thread

Komihåglista

Taggar
perl, perl skift, växla, skift perl

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 01:54.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0