三九宝宝网宝宝百科宝宝知识

shell如何根据年月

03月14日 编辑 39baobao.com

[如果知道年月日如何计算星期]楼主问的是可以计算的,但必须是公历日期,农历不行 简洁明了的公式: S=X-1+(X-1)/4+(X-1)/100+(X-1)/400+C X是年份,C是该年从元旦开始到到这一日的天数。 注意,其中每个求和项都...+阅读

shell 获取上月最后一天,参考代码如下:

#!/bin/sh

function get_last_day(){

year=`expr substr $1 1 4`

month=`expr substr $1 5 2`

if [ $month = '01' ] || [ $month = '03' ] || [ $month = '05' ] || [ $month = '07' ] || [ $month = '08' ] || [ $month = '10' ] || [ $month = '12' ] ;then

echo $year''$month''31

elif [ $month = '02' ] ; then

if [ `expr $year % 400` = 0 ] ; then

echo $year''$month''29

elif [ `expr $year % 4` = 0 ] & [ `expr $year % 100` != 0 ] ; then

echo $year''$month''29

else

echo $year''$month''28

fi

else

echo $year''$month''30

fi

}

注意几点:

1) if语句的[]里的写法是所有单词和符号之间都留空格,if[a=1]是错的,应该是if [ a = 1 ]

2) shell中if里面如果要多条件判断,if [ a = 1 || a = 2]这样写是错的,应该是if [ a = 1 ] || [ a = 2 ]

3) echo $year''$month''29 这里''不能省略,不然只会输出年字段。

shell计算日期

#!/bin/bash

# Program:

# Tring to calculate your demobilization date at how many days

# later...

# History:

# 2008/5/1 cc First release

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH //说明解释代码是用来做什么的。

echo "This prorgram will try to calculate :"

echo "How many days about your demobilization date..."

read -p "Please input your demobilization date (YYYYMMDD ex>20050401): " date2

date_d=`echo $date2 | grep '[0-9]\{8\}' ` //告诉用户程序的用途,并且说明应该如何输入日期格式

declare -i date_dem=`date --date="$date2" +%s`

declare -i date_now=`date +%s`

declare -i date_total_s=$(($date_dem-$date_now))

declare -i date_d=$(($date_total_s/60/60/24))

if [ "$date_total_s" -lt "0" ]; then

echo "You had been demobilization before: " $((-1*date_d)) " ago"

else

declare -i date_h=$(($date_total_s-$date_d*60*60*24))/60/60))

echo "You will be demobilized after $date_d days and $date_h hours."

Fi //开始计算日期

日期控件框展示月份根据季度展示本季度的月份

今天刚好需要解决这个问题,不过我的是获取当前时间的上一个季度。与你的略有差别。

以下是我实现的代码:

string a= DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).ToString("MM");//获取上季度的第一个月份

string year = DateTime.Now.AddMonths(-3 - ((DateTime.Now.Month - 1) % 3)).ToString("yyyy"); //获取上季度的年份,这很重要如果本季度为第四季度则需要加上年份

int b= 3;

int c;

if (int.Parse(a)% b!= 0) //百分号为求余号

{

c= int.Parse(a) / c+ 1;

}

else

{

c= int.Parse(a) / b;

}

label2.Text = year + "[第" + c+"季度]";

你这个问题只要能分别取到日期控件选择的年、月就能按照我的代码实现输入日期判断季度的功能。只需要一个时间就好,不需要一定的时间段。

shell中date函数我知道显示当前月是echo date Y m

如果是在Linux上,hefan77的答案就可以了。 如果是在其它的Unix上(e.g. AIX,HPUX,SunOS etc) date command 没有 -d 的 option 可用时,可以用下面script: #!/bin/ksh let YEAR=$(date "+%Y") let MONTH=$(date "+%m") if [ $MONTH -eq 1 ] then let YEAR=YEAR-1 LASTYM=$(printf "%d-%.2d\n" $YEAR 12) else let MONTH=MONTH-1 LASTYM=$(printf "%d-%.2d\n" $YEAR $MONTH) fi echo $LASTYM

以下为关联文档:

java根据年月获取对应的月份工作日天数import java.util.Calendar; public class Main { public static void main(String[] args) { System.out.println(countWorkDay(2018, 6)); } /** * 获取指定年月有多少个...

C语言的问题:根据输入的年月日输出该日为该年度的第几周第几//根据输入的年月日,输出该日为该年度的第几周、第几天、星期几。 //如输入: 2007,12,1 //则输出: 48z,335t,6xq int date[12]={31,28,31,30,31,30,31,31,30,31,30,31};#includ...

java如何得到年月package test; import java.util.Calendar; public class Test { public static void main(String[] args) { Calendar cal=Calendar.getInstance();//使用日历类 int year=ca...

如何从日期变量中提取年月1输入提取日期。将所需要提取的日期输入表格中。这是一个纯粹的手工输入。教给大家一个输入当前日期的小技巧:Ctrl+; 。同时按下这两个键,就会自动生成当前日期,十分快捷!2提取“...

如何在EXCEL中提取出生年月日并能把出生年月日排序因为现行的身份证号有15位和18位并存,所以应用下式: =IF(LEN(A1)=15,TEXT(MID(A1,7,6),("19")&"00年00月00日"),IF(LEN(A1)=18,TEXT(MID(A1,7,8),"0000年00月00日"),"")) 公式可以向下拖放复...

sqlserver中如何取日期的年月从sqlserver数据库中提取日期应该使用,并把年月日分别截取出来应该使用数据库提供的时间函数。1:使用year,month,day用来提取年月日如:select year(getdate()),month(getdate()...

请教python如何执行shell管道命令Python执行Linux系统命令,即在Python脚本中调用Shell命令,具体有以下四种方法: 1、os.system //仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息 system(command)...

根据出生年月日以及生日时辰测运程雷地豫【吉凶指数:★★★平】卦辞:豫,利建侯行师。 解卦:春天即将来临,充满朝气蓬勃的景象,运势将开始好转,应把握住各种机会,千万不可沉溺于享乐,虽然愿望理想能偿,但仍需保持高度警...

Linux如何编写shell脚本Linux如何编写shell脚本,linux编程题使用shell脚本:一般以 #!/bin/sh 开头(不是必须要写,但一定要单独一行),指定执行这个脚本的shell程序(也可以用#!/bin/zsh或其他),然后就是堆命令了...

推荐阅读
图文推荐