`
chenchao051
  • 浏览: 137735 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

shell查找上个月,陷阱及野路子

阅读更多
date -d "-1 month" +%F

    以上这段代码,假如在2012/10/31执行,结果并不会出现你预计的9月份,而是会出现八月份,原因是10月份有31天,9月份30天,所以-1 month在10月份看来要减去31天,所以直接到了8月31日这天,这不靠谱。

    野路子解决:假设当天日期大于15号,那就减个十天,假如小于15号,那就使用当天日期。

currday=`date +%d`
vd=`date +%F`
if [ $currday -gt 15 ];then
    vd=`date +"%F" -d "-10 days"`
fi

 

接着

date -d "$vd -1 month" +%F

 

就这样,搞定了。赤裸裸的野路子。我不相信shell这么笨的,是不是有更好更简单的方法,tell me.

分享到:
评论

相关推荐

    aix、linux取上个月日期的shell脚本

    取aix、linux上一个月的日期shell脚本;

    shell 查找指定名称的文件 脚本

    shell查找指定名称的文件脚本,参数见脚本注释

    B shell与 C shell的区别

    B shell的优点是它可以在所有的UNIX系统上运行,并且它的shell编程语言支持绝大多数在高级语言中能见到的程序元素,而C shell的优点是它提供了很多实用的功能,如命令历史记录、文件名补全和别名功能等。

    250个shell脚本

    本文档收集了250个实用的Shell脚本实例,涵盖了多个应用场景,包括系统管理、安全防护、数据库备份等核心知识点。 1. Dos攻击防范:通过监控Nginx的日志文件,检测到异常频繁的IP访问后,脚本会自动使用iptables...

    Shell编程技巧和陷阱介绍

    ### Shell编程技巧与陷阱详解 #### 一、Shell编程基础概览 Shell编程是Linux系统管理及自动化任务处理的关键技能之一。本文档旨在提供百度内部培训资料中的精华内容,涵盖Shell编程的基础知识、脚本实践及专项知识...

    Shell脚本中获取进程ID的方法

    当我在执行shell脚本时,它会启动一个叫子shell的进程。作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为“批处理进程”)。 在某些情况下,你也许想要知道运行中的子shell的PID。这个PID...

    在MCU上运行的简单控制台shell

    总结,创建一个在MCU上运行的控制台shell涉及多个方面,包括理解串口通信、命令解析、MCU硬件接口的使用等。通过这样的shell,开发者可以更高效地测试和调试代码,增强对系统的控制能力。对于STM32等MCU的开发者来说...

    shell脚本-查找C结构体和函数的定义

    对于linux/unix c的初学者来说,读代码的时候经常会想知道一些系统调用和系统用的结构体的定义,使用这个脚本就可以查出结构体和函数的定义。

    shell的一个IDE

    为了充分利用这个插件,你需要熟悉Vi的基本操作,包括插入模式和命令模式的切换、查找与替换、保存文件等。同时,了解Bash语言的语法和最佳实践也是必要的,这将帮助你编写出高效、易读的Shell脚本。 总的来说,...

    Linux下的Shell 编程

    5. **管道**:`|` 可以将一个命令的输出作为另一个命令的输入,如`ls | grep "txt"` 查找包含"txt"的文件。 **三、Shell脚本结构** 1. **shebang**:脚本开头的`#!/bin/bash`指定了解释器。 2. **变量声明**:在...

    109个shell脚本合集.pdf

    Shell脚本是一种脚本语言,利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能。 Shell脚本可以直接使用在Windows、Unix、Linux上面,并且可以调用大量系统内部的功能来解释执行程序。如果...

    在shell脚本中获取上个月最后一天的日期方法

    linux中用date命令来获取上个月最后一天的日期: $ date -d`date +%Y%m01` last day +%Y%m%d 20161231 编写脚本getdate.sh: #! /bin/sh nowdate=`date +%Y%m01` #本月第一天 startdate=`date -d$nowdate last ...

    shell编写 shell编写

    一个简单的Shell脚本通常以`#!/bin/bash`作为首行,称为Shebang,用于指定执行此脚本的Shell类型。接下来,你可以定义变量、执行命令、控制流程等。例如: ```bash #!/bin/bash # 定义变量 VAR="Hello, World!" #...

    shell脚本编程100例

    shell脚本可以用于使用find查找指定范围的目录,例如使用shell脚本编写一个使用find查找指定范围的目录的程序,实现自动化文件管理。 《shell脚本编程100例》为读者提供了100个实战性的shell脚本编程实例,涵盖了多...

    linux_shell实例精解

    Linux Shell是Linux操作系统中的一种命令解释器,它提供了一个用户与操作系统内核交互的界面,使得用户可以通过文本命令行执行各种操作。Shell脚本则是一种编程语言,它允许用户编写包含一系列命令的程序,实现自动...

    shell.efi 启动

    UEFI固件在启动时会查找存储设备上的特定文件,这个文件通常被称为"EFI引导程序"。在本例中,shell.efi就是这样的引导程序。当计算机检测到shell.efi文件位于正确的路径上,即U盘的根目录下,它就会运行这个文件,...

    UNIX SHELL 经典(全)

    《UNIX SHELL 经典》是一本全面深入探讨UNIX SHELL编程技术的著作,它将带你深入了解这个强大的命令行环境。书中的内容分为五个部分,旨在帮助读者掌握shell编程技巧,理解UNIX命令及其语法,同时涉猎UNIX的文字处理...

    Linux下Shell命令解释步骤程序实现

    Shell 基本上是一个命令解释器,类似于 DOS 下的 command.com。它接收用户命令,然后调用相应的功能处理程序。 本文将详细讲解 Linux Shell 命令解释步骤的实现过程,包括打印提示符、得到命令行、解析命令、查找...

    UNIX命令及SHELL编程

    这是一套完整的Unix培训教材,包括Unix常用命令及SHELL编程基础与高级技巧,PDF格式,共30个文件。另有2个Word文档。包内文件清单如下: 01_Shell-文件安全与权限.PDF 02_Shell-使用find和xargs.PDF 03_Shell-...

Global site tag (gtag.js) - Google Analytics