![]() |
|
|
google unix.com
|
|||||||
| Forum | Registrati | Regole Forum | Collegamenti | Album | FAQ | Members List | Calendario | Ricerca | Today's Posts | Mark Forums Read |
| Shell scripting e di programmazione Pubblica domande su KSH, CSH, SH, Bash, Perl, PHP, sed, awk e da altri script di shell e linguaggi di scripting shell qui. |
Più di UNIX e Linux Forum Argomenti potreste trovare utili
|
||||
| Filo | Thread Starter | Forum | Risposte | Ultimo Post |
| Come ottenere il precedente mese di Korn Shell | nvuradi | Shell scripting e di programmazione | 1 | 03-19-2008 12:31 AM |
| Come trovare il primo giorno del mese precedente in UNIX? | Mohapatra | Shell scripting e di programmazione | 10 | 07-02-2007 09:57 PM |
| Specifica una data precedente, come data di inizio di script di shell | ritzwan0 | Shell scripting e di programmazione | 2 | 09-25-2006 06:58 PM |
| Come arrivare mese precedente file | savitha | Shell scripting e di programmazione | 7 | 03-23-2006 05:16 AM |
| il nome del file utilizzando mese precedente | beilstwh | Shell scripting e di programmazione | 1 | 08-04-2004 05:21 PM |
![]() |
|
|
LinkBack | Thread Tools | Cerca in questo Thread | Rate Thread | Modalità di visualizzazione |
|
|
|
||||
|
Aiuto, ho bisogno di avere l'ultima data del mese precedente
Hi, I'm nuovo con Unix, Sto cercando di ottenere un ultimo giorno del mese precedente, con questo formato:% d% b% Y (esempio: 25 febbraio 2008).
Ecco quello che ho finora. #! / bin / ksh cur_month \u003d `date +% m` cur_year \u003d `date +% Y` PREV_MONTH \u003d$(($ cur_month-1)) # Check per vedere se questo è il gennaio if [$ PREV_MONTH-lt 1] allora prev_year \u003d$(($ cur_year-1)) PREV_MONTH \u003d 12 LastDayOfMonth \u003d `/ bin / cal PREV_MONTH $ $ prev_year | grep-v" ^ $ "| tail -1 | awk '(print $ NF)'` altro LastDayOfMonth \u003d `/ bin / cal PREV_MONTH $ $ cur_year | grep-v" ^ $ "| tail -1 | awk '(print $ NF)'` fi \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u0 Sono in grado di ottenere l'ultimo giorno del mese precedente, ma non so come mettere indietro nel formato che volevo. Please help. Grazie. |
|
|||||
|
Codice:
# cat lastday.ksh
#!/bin/ksh
cur_month=`date +%m`
cur_year=`date +%Y`
prev_month=$(($cur_month-1))
# Check to see if this is January
if [ $prev_month -lt 1 ]
then
prev_year=$(($cur_year-1))
prev_month=12
LastDayOfMonth=`/bin/cal $prev_month $cur_year | grep -v "^$" | sed -n '1p;$p' | tr "\n" " " | awk '{print substr($1,1,3),$NF,$2}'`
else
LastDayOfMonth=`/bin/cal $prev_month $cur_year | grep -v "^$" | sed -n '1p;$p' | tr "\n" " " | awk '{print substr($1,1,3),$NF,$2}'`
fi
echo $LastDayOfMonth
# ./lastday.ksh
Jan 31 2008
# date
Mon Feb 25 16:23:48 GMT 2008
|
![]() |
| Segnalibri |
| Thread Tools | Cerca in questo Thread |
| Modalità di visualizzazione | Vota questo thread |
|
|