Bash中关于日期时间操作的常用自定义函数

在编写Linux Bash脚本时,经常会用到一些日期时间有关的命令,下面是我多年Shell编程中常用的函数,现在整理出来,希望起到抛砖引玉的作用。

 

 

附件包括三个文件:

datetime.sh  包含了Bash中关于日期时间操作的常用自定义函数

test_datetime.sh 用来展示datetime.sh中自定义函数的用法

test_datetime.txt 是test_datetime.sh的一次执行输出样本

 

执行命令:

./test_datetime.sh >test_datetime.txt

 

 

文件:datetime.sh

#!/bin/sh


# Copyright (c) 2010 codingstandards. All rights reserved.
# file: datetime.sh
# description: Bash中关于日期时间操作的常用自定义函数
# license: LGPL
# author: codingstandards
# email: codingstandards@gmail.com
# version: 1.0
# date: 2010.02.27


# usage: yesterday
# 昨天
# 比如今天是2010年2月27日,那么结果就是2010-02-26
yesterday()
{
	date --date='1 day ago' +%Y-%m-%d
}

# usage: today
# 今天
# 比如今天是2010年2月27日,那么结果就是2010-02-27
today()
{
	date +%Y-%m-%d
}

# usage: now
# 现在,包括日期和时间、纳秒
# 比如:2010-02-27 11:29:52.991774000
now()
{
    date "+%Y-%m-%d %H:%M:%S.%N"
}

# usage: curtime
# 当前时间,包括日期和时间
# 比如:2010-02-27 11:51:04
curtime()
{
	date '+%Y-%m-%d %H:%M:%S'
	# 也可写成:date '+%F %T'
}

# usage: last_month
# 取上个月的年月
# 比如:2010-01
last_month()
{
	date --date='1 month ago' '+%Y-%m'
}

# usage: last_month_packed
# 取上个月的年月
# 比如:201001
last_month_packed()
{
	date --date='1 month ago' '+%Y%m'
}

# usage: first_date_of_last_month
# 取上个月的第一天
# 比如本月是2010年2月,那么结果就是2010-01-01
first_date_of_last_month()
{
	date --date='1 month ago' '+%Y-%m-01'
}

# usage: last_date_of_last_month
# 取上个月的最后一天
# 比如当前是2010年2月,那么结果就是2010-01-31
last_date_of_last_month()
{
	date --date="$(date +%e) days ago" '+%Y-%m-%d'
}

# usage: day_of_week
# 今天的星期
# day of week (0..6);  0 represents Sunday
day_of_week()
{
	date +%w
}

# usage: last_hour
# 上个小时
# 比如:2010-02-27-10
# 适合处理log4j生成的日志文件名
last_hour()
{
	date --date='1 hour ago' +%Y-%m-%d-%H
}

# usage: the_hour
# 当前的小时,为方便算术比较,结果不以0开头
# 比如:12
the_hour()
{
	#date +%H	# hour (00..23)
	date +%k	# hour ( 0..23)
}

# usage: the_minute
# 当前的分钟,为方便算术比较,结果不以0开头
# 比如:
the_minute()
{
	MM=$(date +%M)	# minute (00..59)
	echo $[1$MM-100]
}

# usage: the_second
# 当前的秒数
# 比如:
the_second()
{
	SS=$(date +%S)	# second (00..60); the 60 is necessary to accommodate a leap  second
	echo $[1$SS-100]
}

# usage: the_year
# 当前的年份 year (1970...)
# 比如:2010
the_year()
{
	date +%Y
}

# usage: the_month
# 当前的月份,为方便算术比较,结果不以0开头
# 比如:2
the_month()
{
	M=$(date +%m) # month (01..12)
	echo $[1$M-100]
}

# usage: the_date
# 当前的日期,为方便算术比较,结果不以0开头
# 比如:27
the_date()
{
	date +%e	# day of month, blank padded ( 1..31)
}

# usage: days_ago <n>
# 取n天前的日期
# 比如:days_ago 0就是今天,days_ago 1就是昨天,days_ago 2就是前天,days_ago -1就是明天
# 格式:2010-02-27
days_ago()
{
	date --date="$1 days ago" +%Y-%m-%d
}

# usage: chinese_date_and_week()
# 打印中文的日期和星期
# 比如:2月27日 星期六
chinese_date_and_week()
{
	WEEKDAYS=(星期日 星期一 星期二 星期三 星期四 星期五 星期六)
	WEEKDAY=$(date +%w)
	#DT="$(date +%Y年%m月%d日) ${WEEKDAYS[$WEEKDAY]}"   
	MN=1$(date +%m)
	MN=$[MN-100]
	DN=1$(date +%d)
	DN=$[DN-100]
	DT="$MN月$DN日 ${WEEKDAYS[$WEEKDAY]}"
	echo "$DT"
}

# usage: rand_digit
# 随机数字,0-9
rand_digit()
{
    S="$(date +%N)"
    echo "${S:5:1}"
}

# usage: seconds_of_date [<date> [<time>]]
# 获取指定日期的秒数(自1970年)
# 比如:seconds_of_date "2010-02-27" 返回 1267200000
seconds_of_date()
{
	if [ "$1" ]; then
		date -d "$1 $2" +%s
	else
		date +%s
	fi
}

# usage: date_of_seconds <seconds>
# 根据秒数(自1970年)得到日期
# 比如:date_of_seconds 1267200000 返回 2010-02-27
date_of_seconds()
{
	date -d "1970-01-01 UTC $1 seconds" "+%Y-%m-%d"
}

# usage: datetime_of_seconds <seconds>
# 根据秒数(自1970年)得到日期时间
# 比如:datetime_of_seconds 1267257201 返回 2010-02-27 15:53:21
datetime_of_seconds()
{
	date -d "1970-01-01 UTC $1 seconds" "+%Y-%m-%d %H:%M:%S"
}

# usage: leap_year <yyyy>
# 判断是否闰年
# 如果yyyy是闰年,退出码为0;否则非0
# 典型示例如下:
# if leap_year 2010; then
# 	echo "2010 is leap year";
# fi
# if leap_year 2008; then
# 	echo "2008 is leap year";
# fi
# 摘自脚本:datetime_util.sh (2007.06.11)
# 注:这个脚本来自网络,略有修改(原脚本从标准输入获取年份,现改成通过参数指定)
# Shell program to read any year and find whether leap year or not
# -----------------------------------------------
# Copyright (c) 2005 nixCraft project <http://cyberciti.biz/fb/>
# This script is licensed under GNU GPL version 2.0 or above
# -------------------------------------------------------------------------
# This script is part of nixCraft shell script collection (NSSC)
# Visit http://bash.cyberciti.biz/ for more information.
# -------------------------------------------------------------------------
leap_year()
{
	# store year
	yy=$1
	isleap="false"

	#echo -n "Enter year (yyyy) : "
	#read yy

	# find out if it is a leap year or not

	if [ $((yy % 4)) -ne 0 ] ; then
		: #  not a leap year : means do nothing and use old value of isleap
	elif [ $((yy % 400)) -eq 0 ] ; then
		# yes, it's a leap year
		isleap="true"
	elif [ $((yy % 100)) -eq 0 ] ; then
		: # not a leap year do nothing and use old value of isleap
	else
		# it is a leap year
		isleap="true"
	fi
	#echo $isleap
	if [ "$isleap" == "true" ]; then
		#  echo "$yy is leap year"
		return 0
	else
		#  echo "$yy is NOT leap year"
		return 1
	fi
}

# usage: validity_of_date <yyyy> <mm> <dd>
# 判断yyyy-mm-dd是否合法的日期
# 如果是,退出码为0;否则非0
# 典型示例如下:
# if validity_of_date 2007 02 03; then
# 	echo "2007 02 03 is valid date"
# fi
# if validity_of_date 2007 02 28; then
# 	echo "2007 02 28 is valid date"
# fi
# if validity_of_date 2007 02 29; then
# 	echo "2007 02 29 is valid date"
# fi
# if validity_of_date 2007 03 00; then
# 	echo "2007 03 00 is valid date"
# fi
# 摘自脚本:datetime_util.sh (2007.06.11)
# 注:这个脚本来自网络,略有修改(原脚本从标准输入获取年月日,现改成通过参数指定)
# Shell program to find the validity of a given date
# -----------------------------------------------
# Copyright (c) 2005 nixCraft project <http://cyberciti.biz/fb/>
# This script is licensed under GNU GPL version 2.0 or above
# -------------------------------------------------------------------------
# This script is part of nixCraft shell script collection (NSSC)
# Visit http://bash.cyberciti.biz/ for more information.
# -------------------------------------------------------------------------
validity_of_date()
{
	# store day, month and year
	yy=$1
	mm=$2
	dd=$3

	# store number of days in a month
	days=0

	# get day, month and year
	#echo -n "Enter day (dd) : "
	#read dd

	#echo -n "Enter month (mm) : "
	#read mm

	#echo -n "Enter year (yyyy) : "
	#read yy

	# if month is negative (<0) or greater than 12 
	# then it is invalid month
	if [ $mm -le 0 -o $mm -gt 12 ]; then
		#echo "$mm is invalid month."
		return 1
	fi

	# Find out number of days in given month
	case $mm in 
		1) days=31;;
		01) days=31;;
		2) days=28 ;;
		02) days=28 ;;
		3) days=31 ;;
		03) days=31 ;;
		4) days=30 ;;
		04) days=30 ;;
		5) days=31 ;;
		05) days=31 ;;
		6) days=30 ;;
		06) days=30 ;;
		7) days=31 ;;
		07) days=31 ;;
		8) days=31 ;;
		08) days=31 ;;
		9) days=30 ;;
		09) days=30 ;;
		10) days=31 ;;
		11) days=30 ;;
		12) days=31 ;;
		*) days=-1;;
	esac

	# find out if it is a leap year or not

	if [ $mm -eq 2 ]; then # if it is feb month then only check of leap year
		if [ $((yy % 4)) -ne 0 ] ; then
			: #  not a leap year : means do nothing and use old value of days
		elif [ $((yy % 400)) -eq 0 ] ; then
			# yes, it's a leap year
			days=29
		elif [ $((yy % 100)) -eq 0 ] ; then
			: # not a leap year do nothing and use old value of days
		else
			# it is a leap year
			days=29
		fi
	fi

	#echo $days

	# if day is negative (<0) and if day is more than 
	# that months days then day is invaild
	if [ $dd -le 0 -o $dd -gt $days ]; then
		#echo "$dd day is invalid"
		return 3
	fi

	# if no error that means date dd/mm/yyyy is valid one
	#echo "$dd/$mm/$yy is a vaild date"
	#echo "$yy-$mm-$dd is a valid date"
	#echo "valid"
	return 0
}

# usage: days_of_month <mm> <yyyy>
# 获取yyyy年mm月的天数,注意参数顺序
# 比如:days_of_month 2 2007 结果是28
days_of_month()
{
	# store day, month and year
	mm=$1
	yy=$2

	# store number of days in a month
	days=0

	# get day, month and year
	#echo -n "Enter day (dd) : "
	#read dd

	#echo -n "Enter month (mm) : "
	#read mm

	#echo -n "Enter year (yyyy) : "
	#read yy

	# if month is negative (<0) or greater than 12 
	# then it is invalid month
	if [ $mm -le 0 -o $mm -gt 12 ]; then
		#echo "$mm is invalid month."
		echo -1
		return 1
	fi

	# Find out number of days in given month
	case $mm in 
		1) days=31;;
		01) days=31;;
		2) days=28 ;;
		02) days=28 ;;
		3) days=31 ;;
		03) days=31 ;;
		4) days=30 ;;
		04) days=30 ;;
		5) days=31 ;;
		05) days=31 ;;
		6) days=30 ;;
		06) days=30 ;;
		7) days=31 ;;
		07) days=31 ;;
		8) days=31 ;;
		08) days=31 ;;
		9) days=30 ;;
		09) days=30 ;;
		10) days=31 ;;
		11) days=30 ;;
		12) days=31 ;;
		*) days=-1;;
	esac

	# find out if it is a leap year or not

	if [ $mm -eq 2 ]; then # if it is feb month then only check of leap year
		if [ $((yy % 4)) -ne 0 ] ; then
			: #  not a leap year : means do nothing and use old value of days
		elif [ $((yy % 400)) -eq 0 ] ; then
			# yes, it's a leap year
			days=29
		elif [ $((yy % 100)) -eq 0 ] ; then
			: # not a leap year do nothing and use old value of days
		else
			# it is a leap year
			days=29
		fi
	fi

	echo $days
}

 

文件:test_datetime.sh

#!/bin/sh

# TODO: 注意根据datetime.sh的实际位置更改
. /opt/shtools/commons/datetime.sh

echo "当前时间(date):$(date)"
echo "昨天(yesterday):$(yesterday)"
echo "今天(today):$(today)"
echo "现在(now):$(now)"
echo "现在(curtime):$(curtime)"
echo "上月(last_month):$(last_month)"
echo "上月(last_month_packed):$(last_month_packed)"
echo "上月第一天(first_date_of_last_month):$(first_date_of_last_month)"
echo "上月最后一天(last_date_of_last_month):$(last_date_of_last_month)"
echo "今天星期几(day_of_week):$(day_of_week)"
echo "上个小时(last_hour):$(last_hour)"
echo "当前的小时(the_hour):$(the_hour)"
echo "当前的分钟(the_minute):$(the_minute)"
echo "当前的秒钟(the_second):$(the_second)"
echo "当前的年份(the_year):$(the_year)"
echo "当前的月份(the_month):$(the_month)"
echo "当前的日期(the_date):$(the_date)"
echo "前天(days_ago 2):$(days_ago 2)"
echo "明天(days_ago -1):$(days_ago -1)"
echo "后天(days_ago -2):$(days_ago -2)"
echo "十天前的日期(days_ago 10):$(days_ago 10)"
echo "中文的日期星期(chinese_date_and_week):$(chinese_date_and_week)"
echo "随机数字(rand_digit):$(rand_digit)"
echo "随机数字(rand_digit):$(rand_digit)"
echo "自1970年来的秒数(seconds_of_date):$(seconds_of_date)"
echo "自1970年来的秒数(seconds_of_date 2010-02-27):$(seconds_of_date 2010-02-27)"
echo "自1970年来的秒数(seconds_of_date 2010-02-27 15:53:21):$(seconds_of_date 2010-02-27 15:53:21)"
echo "自1970年来的秒数对应的日期(date_of_seconds 1267200000):$(date_of_seconds 1267200000)"
echo "自1970年来的秒数对应的日期时间(datetime_of_seconds 1267257201):$(datetime_of_seconds 1267257201)"

if leap_year 2010; then
	echo "2010年是闰年";
fi
if leap_year 2008; then
	echo "2008年是闰年";
fi
if validity_of_date 2007 02 03; then
	echo "2007 02 03 日期合法"
fi
if validity_of_date 2007 02 28; then
	echo "2007 02 28 日期合法"
fi
if validity_of_date 2007 02 29; then
	echo "2007 02 29 日期合法"
fi
if validity_of_date 2007 03 00; then
	echo "2007 03 00 日期合法"
fi

echo "2010年2月的天数(days_of_month 2 2010):$(days_of_month 2 2010)"
echo "2008年2月的天数(days_of_month 2 2008):$(days_of_month 2 2008)"

 

文件:test_datetime.txt

 
当前时间(date):六  2月 27 15:58:28 CST 2010
昨天(yesterday):2010-02-26
今天(today):2010-02-27
现在(now):2010-02-27 15:58:28.734817000
现在(curtime):2010-02-27 15:58:28
上月(last_month):2010-01
上月(last_month_packed):201001
上月第一天(first_date_of_last_month):2010-01-01
上月最后一天(last_date_of_last_month):2010-01-31
今天星期几(day_of_week):6
上个小时(last_hour):2010-02-27-14
当前的小时(the_hour):15
当前的分钟(the_minute):58
当前的秒钟(the_second):28
当前的年份(the_year):2010
当前的月份(the_month):2
当前的日期(the_date):27
前天(days_ago 2):2010-02-25
明天(days_ago -1):2010-02-28
后天(days_ago -2):2010-03-01
十天前的日期(days_ago 10):2010-02-17
中文的日期星期(chinese_date_and_week):2月27日 星期六
随机数字(rand_digit):5
随机数字(rand_digit):9
自1970年来的秒数(seconds_of_date):1267257508
自1970年来的秒数(seconds_of_date 2010-02-27):1267200000
自1970年来的秒数(seconds_of_date 2010-02-27 15:53:21):1267257201
自1970年来的秒数对应的日期(date_of_seconds 1267200000):2010-02-27
自1970年来的秒数对应的日期时间(datetime_of_seconds 1267257201):2010-02-27 15:53:21
2008年是闰年
2007 02 03 日期合法
2007 02 28 日期合法
2010年2月的天数(days_of_month 2 2010):28
2008年2月的天数(days_of_month 2 2008):29
Shell-Bash 根据日期时间统计消息行数 需求:统计某个文件或者特定目录下Kafka消息一段时间范围内每个小时消息条数或者每天消息条数。一行数据行实例:2018-03-28T03:00:02 ...分析: 参数:1.指定文件的文件绝对路径           2.指定日期或者开始日期和结束日期           3.指定小时或者开始小时和结束小时           4.指定统计维度(小时或者天)逻辑:1.输出逻辑 -- 文件 + 屏幕... 阅读详情

相关推荐

Bash脚本教程之函数

目录 简介 参数变量 return 命令 全局变量和局部变量,local 命令 简介 函数(function)是可以重复使用的代码片段,有利于代码的复用。它与别名(alias)的区别是,别名只适合封装简单的单个命令,函数则可以封装复杂的多行命令。 函数总是在当前 Shell 执行,这是跟脚本的一个重大区别,Bash 会新建一个子 Shell 执行脚本。如果函数与脚本同名,函数会优先执行。但是,函数的优先级不如别名,即如果函数与别名同名,那么别名优先执行。 Bash 函数定义的语法有两种.

孙叫兽的博客 1962

bash中时间、日期操作

From: http://www.360doc.com/content/11/0126/19/2104556_89195576.shtml 昨天 (前一天) date –date=’1 days ago’ “+%Y-%m-%d”date -d ’1 days ago’ “+%Y-%m-%d”date -d yesterday “+%Y-%m-%d” 明天 (後一天) date –d

JoeBlackZQQ的专栏 2664

在pycharm2021.2中学习opencv图像处理,基于python3.9.7、pycharm完成配置

在pycharm中学习opencv图像处理安装python下载python安装包开始安装安装pycharm社区版下载pycharm开始安装如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 安装python 使用pycharm学习opencv应该是最简单的了,对新手比较友好,

steveqobs 7707

Linux:Bash Shell - 获取日期、时间

以下代码将date的执行结果存储在today变量中。date 是获取日期和时间的命令。可以获取几周前/几周后或几个月前/之后的时间。选择使用 quotes(`)或$使用date获取日期。

Kant2048的博客 2068

【RS】哨兵系列数据下载(哨兵2号Sentinel-2波段介绍、下载)

以哨兵二号为示例,分享如何下载欧空局的哨兵系列数据

Remote Sensing迷途小书童 1万+

2.1 跟网型控制原理与局限性

本文深入分析了并网变流器的跟网型(GFL)控制技术及其局限性。GFL控制将变流器视为受控电流源,依赖锁相环(PLL)跟踪电网电压,在强电网下表现良好,但在弱电网中面临严峻挑战。研究发现,当电网短路比降低时,PLL动态与电网阻抗的负交互会导致系统失稳,同时GFL变流器缺乏电压支撑能力和惯量响应能力,在故障时易脱网。相比之下,构网型(GFM)控制具有电压源特性,能自主构建电网电压,更适合弱电网环境。随着新能源占比提高,GFL控制正逐渐被更具主动支撑能力的GFM控制所替代。

技术工作者 995

Java日期比较大小的几种方式

日期比较在开发里面很是常见,我也踩了不少坑,本文就列举一下Java日期比较的方式 一、字符串String的日期比较 String型的日期通过compareTo()来比较,因为String实现了comparable接口 这里我们比较的是endDate、today的大小today.compareTo(endDate)来判断红包是否过期不可领取 endDate表示 红包失效的日期 today表示当前时间(今天) today.compareTo(endDate) >0 说明今天日期 相对晚 ,大于红包失效日

qq_44384533的博客 4万+

C#实战:5分钟搞定Modbus RTU通讯(基于NModbus4库)

本文详细介绍了如何使用C#和NModbus4库快速实现Modbus RTU通讯,包括环境配置、核心功能实现、性能优化及常见问题排查。通过代码示例和实用技巧,帮助开发者高效完成工业自动化设备的数据采集与控制任务。

weixin_30689307的博客 467

[Linux] date命令

Linux date命令 可用标记如下 时间%H : 小时(00..23) %I : 小时(01..12) %k : 小时(0..23) %l : 小时(1..12)%M : 分钟(00..59) %p : 显示本地 AM 或 PM %r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M) %s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒...

皮卡丘在充电 2719

HFSS实战项目——基片集成波导(SIW)带通滤波器

设计了一款直接耦合的SIW带通滤波器, 采用直接耦合的形式, 工作频率覆盖19~21 GHz, 通带内插入损耗小于1.5 dB, 回波损耗小于-20 dB, 带外抑制特性良好.

2401_87464239的博客 4895

【stata基础代码大全 】 可独立完成一篇实证

用stata打开,直接替换自己需要的变量就行,小白友好❗️❗️❗️。八、八.中介效应检验:路径分析(三种方法)第二种方法即Sobel-Goodman检验。*(7)Winsor处理,剔除异常值。六、内生性问题解决方法(附具体模型)其三,工具变量:两阶段最小二乘。第三种方法即Bootstrap检验。二、Stata中数据的基本处理。*(5)生成行业、年度虚拟变量。PSM1————近邻匹配。七、调节效应检验:机制分析。*(2)剔除数据中的样本。*(4)给变量添加标签。*(3)生成新的变量。*(6)基本数据匹配。

J_Giser的博客 8023

3.shell脚本基于tar进行自动备份

文章目录前言一、shell脚本基于tar进行自动备份二、脚本 前言 一、shell脚本基于tar进行自动备份 二、脚本 #!/bin/sh dateTime=`date +%Y-%m-%d` days=7 bakuser=user1 bakdir=/data/backupdata #备份文件在本地主机的路径 bakdata=${bakuser}_${dateTime}.tar.gz #备份产生的文件名称,以当前时间命名 baklog=${bakuser}_${dateT

weixin_40068220的博客 670

【论文复现】——基于改进FPFH特征提取的点云模板匹配方法

基于改进FPFH特征提取的点云模板匹配方法 [J]. 应用激光, 2024, 44 (04): 196-204.

点云侠的博客 611

Bash函数

bash函数

syst001的博客 1502

OpenHarmony Stage模型深度解剖:从Ability Kit到沙箱隔离的全链路底层原理

基于微内核架构,提供进程管理、内存管理、IPC通信等基础能力:包含V8引擎、ArkTS运行时、渲染引擎等核心组件:Ability Kit框架,提供应用生命周期管理、组件调度等能力:基于Stage模型的应用程序。

m0_67505153的博客 191

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

linux shell 时间函数吗,Linux下bash中关于日期函数date的格式及各种用法

#!/bin/sh# Copyright (c) 2010 codingstandards. All rights reserved.# file: datetime.sh# description: Bash中关于日期时间操作的常用自定义函数# license: LGPL# author: codingstandards# email: codingstandards@gmail.com# ve...

weixin_30125497的博客 316

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

[shell]Bash 函数

函数(function)是可以重复使用的代码片段,有利于代码的复用。它与别名(alias)的区别是,别名只适合封装简单的单个命令,函数则可以封装复杂的多行命令。函数总是在当前 Shell 执行,这是跟脚本的一个重大区别,Bash 会新建一个子 Shell 执行脚本。如果函数与脚本同名,函数会优先执行。但是,函数的优先级不如别名,即如果函数与别名同名,那么别名优先执行。Bash 函数定义的语法有两种。# 第一种fn() {# codes# 第二种# codes上面代码中,fn。

FL1768317420的博客 670

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Linux下bash中关于日期函数date的格式及各种用法

源地址 : https://fukun.org/archives/06112057.html Example 如果想获取相对日期(不是现在)就要用到-d选项(--date),-d的参数必须是一个整体,可以写成next-day或者“next day” 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20...

367

Bash脚本中timenow函数的解析与示例

Bash脚本中timenow函数的解析与示例

Leon_Jinhai_Sun的博客 447

Bash命令行操作完全指南

《Bash 操作完全指南》摘要 本指南全面介绍了 Bash 命令行的核心操作技巧,包含 12 个主要章节: 基础命令:导航、系统信息查看 文件操作:创建/删除/复制/移动/查找文件 文本处理:查看/搜索/处理文本内容 常用工具:grep/sed/awk 等文本处理 其他核心功能:变量、条件判断、循环控制等 重点内容包括: 文件管理命令 (ls/cp/mv/rm) 文本处理三剑客 (grep/sed/awk) 系统监控命令 (top/df/free) 实用脚本编写技巧 适合 Linux/Unix 用户系统学习

a181001_的博客 606

终极bash时间格式定制指南:strftime函数完全解析

在bash脚本开发中,时间格式的处理是一项基础而重要的技能。无论是日志记录、文件命名还是数据处理,掌握strftime函数的使用方法都能让你的工作效率大幅提升。本文将系统讲解bash环境下时间格式定制的核心方法,帮助你轻松应对各种时间处理场景。 ## 为什么需要掌握bash时间格式定制? 时间信息在shell脚本中无处不在: - 自动化任务的时间戳记录 - 日志文件的规范命名 - 数据报表的时

gitblog_00788的博客 360
下一篇: Bash中使用MySQL导入导出CSV格式数据
codingstandards
博客等级 码龄16年 12粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值