linux shell 指定日期加1天
时间: 2023-12-15 10:06:26 浏览: 40
您好,您的问题是如何在 Linux Shell 中将指定日期加一天。假设您要将日期字符串 `2021-07-13` 加一天并输出结果,可以使用以下命令:
```
date -d "2021-07-13 +1 day" +%Y-%m-%d
```
这个命令使用 `date` 命令的 `-d` 选项来指定日期,然后使用 `+%Y-%m-%d` 参数来指定输出日期的格式。在日期字符串后面使用 `+1 day` 来将日期加一天。
输出将类似于以下内容:
```
2021-07-14
```
希望这可以回答您的问题。
相关问题
linux shell 时间变量加一天
可以使用date命令结合时间格式来实现时间变量加一天,具体命令如下:
```
$ date -d "+1 day" +"%Y-%m-%d"
```
其中,-d参数用于指定日期,+1 day表示增加一天,+%Y-%m-%d表示输出格式为年-月-日。如果要将结果保存到变量中,可以使用命令替换:
```
$ tomorrow=$(date -d "+1 day" +"%Y-%m-%d")
```
这样,变量tomorrow就保存了明天的日期。
shell编程linux每月按固定某一天压缩打包文件letc按年/月/日/打包
你可以使用 `tar` 命令和 `date` 命令来实现此功能。
按照年/月/日的格式打包:
```bash
tar -czvf etc_$(date +%Y-%m-%d).tar.gz /etc/
```
这个命令会将 `/etc/` 目录下所有文件打包成一个以当前日期命名的 tar.gz 文件,例如 `etc_2022-02-28.tar.gz`。
按照每月的固定某一天打包:
```bash
tar -czvf etc_$(date +%Y-%m)-01.tar.gz --newer-mtime $(date -d "$(date +%Y-%m-01) -1 day" +%s) /etc/
```
这个命令会将 `/etc/` 目录下所有在当前月的第一天之前修改过的文件打包成一个以当前月份和日期命名的 tar.gz 文件,例如 `etc_2022-02-01.tar.gz`。其中,`--newer-mtime` 参数用于指定只打包指定时间之后修改过的文件,这里使用了上个月的最后一天作为时间戳,以确保只打包本月修改过的文件。