Visit The New, Modern Unix Linux Community


Get business days including today's date


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Get business days including today's date
# 1  
Get business days including today's date

I am trying to get last 5 business day [excluding sat and sun].
trying
Code:
for d in Mon Tue Wed Thu Fri
do
date +%Y%m%d -d "last $d"
done

gives me [provided]
Code:
date
Thu Oct 20 23:56:26 EDT 2016

Code:
20161017
20161018
20161019
20161013
20161014

expected output should be
Code:
20161017
20161018
20161019
20161020
20161014



Moderator's Comments:
Mod Comment Please use CODE tags as required by forum rules!

Last edited by RudiC; 10-21-2016 at 04:52 AM.. Reason: Added CODE tags.
# 2  
Not trying to interpret your specification but just guessing what you want (for date: 21.10.16 09:57) :
Code:
{ date +%Y%m%d; for d in Mon Tue Wed Thu Fri; do date +%Y%m%d -d "last $d"; done; } | sort | tail -5
20161017
20161018
20161019
20161020
20161021

This User Gave Thanks to RudiC For This Post:
# 3  
You haven't said what operating system or shell you're using (and the date utility on my operating system doesn't support the -d option), but with a recent Korn shell, you could use:
Code:
#!/bin/ksh
dow=$(date '+%a')
for d in Mon Tue Wed Thu Fri
do
	[ $d = $dow ] && offset="now" || offset="last $d"
	#date +%Y%m%d -d "$offset"
	printf '%(%Y%m%d\n)T' "$offset"
done

If you don't have a recent Korn shell and do have a date utility that has a -d option, you could comment out the printf command in that loop and uncomment the date command.
This User Gave Thanks to Don Cragun For This Post:

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #776
Difficulty: Medium
The Fourier transform (FT) decomposes a function of time (a signal) into its constituent frequencies.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Compare Date to today's date in shell script

Hi Community! Following on from this code in another thread: #!/bin/bash file_string=`/bin/cat date.txt | /usr/bin/awk '{print $5,$4,$7,$6,$8}'` file_date=`/bin/date -d "$file_string"` file_epoch=`/bin/date -d "$file_string" +%s` now_epoch=`/bin/date +%s` if then #let... (2 Replies)
Discussion started by: Greenage
2 Replies

2. How to Post in the The UNIX and Linux Forums

Get all business days from week including today

I am trying to get last 5 business day . trying for d in Mon Tue Wed Thu Fri do date +%Y%m%d -d "last $d" done gives me date Thu Oct 20 23:56:26 EDT 2016 20161017 20161018 20161019 20161013 20161014 expected output should be 20161017 20161018 20161019 20161020 (1 Reply)
Discussion started by: abhii
1 Replies

3. Shell Programming and Scripting

Need to add a date column (today's date) in file

Hi I have file with number status and date1 and date1 field, want add a column today between column date1 and date2. file1.txt number status date1 date2 ===== ==== === ===== 34567 open 27/06/13 28/06/13 45678 open 27/06/13 28/06/13 43567 open 27/06/13 28/06/13 ... (1 Reply)
Discussion started by: vijay_rajni
1 Replies

4. Shell Programming and Scripting

UNIX date fuction - how to deduct days from today's date

Hi, One of my Unix scripts needs to look for files coming in on Fridays. This script runs on Mondays. $date +"%y%m%d" will give me today's date. How can I get previous Friday's date.. can I do "today's date minus 3 days" to get Friday's date? If not, then any other way?? Name of the files is... (4 Replies)
Discussion started by: juzz4fun
4 Replies

5. Shell Programming and Scripting

[Solved] Replace yesterday date with today's date except from the first line

Hello, I have a file like this: 2012112920121130 12345620121130msABowwiqiq 34477420121129amABamauee e7748420121130ehABeheheei in case the content of the file has the date of yesterday within the lines containing pattern AB this should be replaced by the current date. But if I use... (3 Replies)
Discussion started by: Lilu_CK
3 Replies

6. UNIX for Dummies Questions & Answers

shell scripting - gives a message on Fridays and a countdown on other business days.

Hey - I need to write a shell script that gives a message on Fridays and a countdown on other business days. ("Today is Thursday, one day to go to Friday") I don't know if I should be scheduling a job for friday using the crontab command? Basically i'm totally lost. Any help would be greatly... (6 Replies)
Discussion started by: citizencro
6 Replies

7. UNIX for Dummies Questions & Answers

Shell Scripts - shows today’s date and time in a better format than ‘date’ (Uses positional paramete

Hello, I am trying to show today's date and time in a better format than ‘date' (Using positional parameters). I found a command mktime and am wondering if this is the best command to use or will this also show me the time elapse since 1/30/70? Any help would be greatly appreciated, Thanks... (3 Replies)
Discussion started by: citizencro
3 Replies

8. Shell Programming and Scripting

Scheduling Cron Jobs on Business Days

Hello, is it possible to schedule cron jobs using business days instead of calendar days? I need to run several jobs on first and third business days of the month. I currently have this cron-tab entry which runs every week day at 5 AM. I need to schedule the same job on the 3rd Business day of the... (8 Replies)
Discussion started by: Pramodini Rode
8 Replies

9. Shell Programming and Scripting

Calculate 30/31 days from today date script

Hi Guys, I was working some time ago n was in need to calculate date 30/31 days from today including Feb (Leap yr stuff). Today date is variable depending on day of execution of script. I tried searching but was not able to get exactly what I needed....So at that I time I implemented by my own... (3 Replies)
Discussion started by: coolgoose85
3 Replies

10. UNIX for Dummies Questions & Answers

compare today's date with date in a file

Hi I am very new to scripting, Can someone show me how to (in unix shell script) compare the system's date with a date in a file. The requirement is to somehow open this file (which will only have a date in it) and compare it with today's date. If they are equal execute a procedure below but if... (4 Replies)
Discussion started by: siog
4 Replies

Featured Tech Videos