>From: Roland Smith <[email protected]>
>Subject: Re: conky calendar
>To: "PJ" <[email protected]>
>Cc: [email protected]
>Date: Saturday, October 10, 2009, 9:27 AM
>
>On Sat, Oct 10, 2009 at 05:01:34AM -0400, PJ wrote:
>> I'm having a bit of a time with the calendar.sh script I
>> found on the Net; it doesn't display quite correctly.
>> It should have brackets around the current date, but I
>> can't figure out what is not functioning correctly:
>>
>> #!/bin/sh
>> cal | awk 'NR>2' | sed -e 's/ / /g' -e 's/[^ ] /& /g' -e 's/..*/ & /'
>> -e 's/ \('`date | awk '{print $2}'`'\) /\['`date | awk '{print $2}'`'\]/'
>
>Look at the output of the date command:
>Sat Oct 10 15:12:39 CEST 2009
>
>Change 'print $2' to 'print $3' to get the numercal date.
>Or even simpler: use "date +%d" instead of "date | awk '{print $3}'".
>
>Roland
I could not get it to work until I changed the single quotes in the last -e
expression to double quotes. (This either interactively under csh or as a
script under sh). BTW, using `date +%s` and with an additional minor change to
make the numbers continue to line up ... Oh! This will not fix mis-alignments
on days when it is not the end of the week, I don't think ... anyway.
cal | awk 'NR>1' | sed -e 's/ / /g' -e 's/[^ ] /& /g' -e 's/..*/ &/' -e
"s/\ `date +%d`/\[`date +%d`\]/"
Gives
$ sh newcal.sh
Su Mo Tu We Th Fr Sa
1 2 3
4 5 6 7 8 9 [10]
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Now, if you had a space character at the end of each line, you could do
something like ...
cal | awk 'NR>1' | sed -e 's/ / /g' -e 's/[^ ] /& /g' -e 's/..*/ &/' -e
"s/\ `date +%d`\ /\[`date +%d`\]/"
And then it would replace (underscore is space) "_8_" with "[8]" so it would
always line up. You can't do that without the space at the end of the line
because the trailing numbers look like this "_17" not "_17_". But, fix that,
and you can use the above. That is left as an exercise for the reader.
-Rich
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[email protected]"