Shell使用tar指令打包文件名带时间戳的操作方法

2023-05-16

文章目录

  • 1. date指令
  • 2. 打包实操

1. date指令

  • 打印年月日 : date +%F

  • 打印年:date +%Y

  • 打印月:date +%m

  • 打印日:date +%d

  • 打印年月日 date +%Y-%m-%d

  • 打印时:date +%H

  • 打印分:date +%M

  • 打印秒:date +%S

  • 打印时分秒:date +%H:%M:%S

  • 打印年月日时分秒:date +%Y-%m-%d\ %H:%M:%S

  • 打印周:date +%w

  • 3天前:date +%F -d “-3day”

  • 3月前:date +%F -d “-3month”

  • 3年前:date +%F -d “-3year”

  • 24小时前:date +%F -d “-24hour”

  • 1440分钟前:date +%F -d “-1440min”

  • 86400秒前:date +%F -d “-86400sec”

    参数-d 显示过去时间

  • 3天后:date +%F -d “+3day”

    未来时间(+表示未来)

2. 打包实操

tar zcf test_`date +%F`.tar.bz2 test/*

常用参数选项:

-c --create			:创建新的归档文件,即打包,打包的意思就是说把一堆文件打包成一个文件
-v --verbose 		:可视化,显示详细的tar处理的文件信息的过程
-f --file 			:要操作的文件名
-x  --extract		:解压文件
-z --gzip, --gunzip, --ungzip      :通过 gzip 来进行归档压缩,如 tar -czvf etc.tar.gz /etc/,解压使用tar -zxvf test.tar.gz
-j  --bzip2      	:通过 bzip2 来归档压缩文件,如 tar -jcvf test.tar.bz2 /etc/,解压使用tar -jxvf test.tar.bz2
-J					:使用xz压缩工具压缩成.xz文件,如 tar -Jcvf test.tar.xz /etc/,解压使用tar -Jxvf test.tar.xz
-t  --list 			:表示查看文件,查看文件中的文件内容
-C --directory=DIR  :解压文件至指定的目录,如果是解压到当前目录,可以不加-C

参考链接:

  • https://blog.csdn.net/MssGuo/article/details/117387213
  • https://blog.csdn.net/csdn_leidada/article/details/121310876
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Shell使用tar指令打包文件名带时间戳的操作方法 的相关文章

  • 将 stdout 和 stderr 捕获到不同的变量中

    是否可以存储或捕获 stdout 和 stderr不同的变量 不使用临时文件 现在我这样做是为了获得标准输出out和标准错误err跑步时some command 但我会 喜欢避免临时文件 error file mktemp out some
  • 使用 GIT_PS1_SHOWCOLORHINTS 自定义 __git_ps1 的颜色

    我尝试过的 我已更新我的提示以包含分支名称 git ps1 另外 我设置GIT PS1 SHOWCOLORHINTS 问题 提示正确显示 然而 树枝的颜色始终是绿色的 我预计肮脏的树枝会是红色的 文档指出 颜色基于 git status s
  • 使用与后期步骤中的 Shell 脚本中的克隆相同的 http git 凭据

    我想要自动化我们的发布过程 并且我有一个 Maven 项目的以下 Jenkins 构建作业 使用配置的 Jenkins 凭证 用户名 密码 克隆 Git 存储库 执行一些 Maven 命令以进行构建 配置一个后步骤来执行一些额外的 Git
  • 从“stdin”读取文件后如何使用“input()”?

    Context 我想要一个简单的脚本 它可以选择多个管道输入中的一个 而不需要EOF when reading a lineUnix Linux 上的错误 它试图 接受多行管道文本 等待用户选择一个选项 将该选项打印到标准输出 所需用途 p
  • 如何在 Bash 中将字符串转换为小写

    有办法进去吗bash questions tagged bash将字符串转换为小写字符串 例如 如果我有 a Hi all 我想将其转换为 hi all 有多种方法 POSIX标准 https en m wikipedia org wiki
  • 如何获取与文件类型关联的图标路径和索引?

    给定一个文件类型 例如 txt 我怎样才能得到 path index 文件类型的关联图标路径和索引 例如 我想转换 txt into Path SystemRoot system32 imageres dll Index 102 有了这些信
  • 如何“grep”连续流?

    可以用吗grep在连续的流中 我的意思是有点tail f
  • bash双括号问题

    我对 bash 脚本非常陌生 在使用双括号时遇到了问题 我似乎无法让它们在 Ubuntu Server 11 10 中工作 我的下面的脚本位于 if test sh 中 bin bash if 14 14 then echo FOO fi
  • 如何将文件中的值分配给 UNIX sh shell 中的变量?

    我一直在搜索这个网站 试图找到这个问题的答案 并发现了几个非常好的答案 不幸的是 它们都不适合我 这是我正在使用的脚本 VALUE cat szpfxct tmp export VALUE echo gt gt LGFILE echo te
  • 如何从 C 函数创建 shell 命令

    想知道如何获取一组 C 函数并将它们转换为 shell bash 命令 假设我有一组简单的 C 函数 int fn1 some C code for function 1 int fn2 some C code for function 2
  • 如何拆分一行并重新排列其元素?

    我在一行中有一些数据 如下所示 abc edf xyz rfg yeg udh 我想呈现如下数据 abc xyz yeg edf rfg udh 以便打印备用字段并用换行符分隔 有没有这样的衬里 下列awk脚本可以做到这一点 gt echo
  • 如何复制每个扩展名为 X 的文件,同时保留原始文件夹结构? (类Unix系统)

    我正在尝试将每个 HTML 文件从 src 文件夹复制到 dist 文件夹 但是 我想保留原始文件夹结构 如果 dist 文件夹不存在 我想创建一个新文件夹 如果文件夹不存在则创建 d dist mkdir dist 复制每个文件 cp R
  • Bash 脚本 - 迭代 find 的输出

    我有一个 bash 脚本 其中需要迭代 find 命令输出的每一行 但似乎我正在迭代 find 命令中的每个单词 以空格分隔 到目前为止我的脚本看起来像这样 folders find maxdepth 1 type d for i in f
  • 在 shell 脚本中查找和替换

    是否可以使用 shell 在文件中搜索然后替换值 当我安装服务时 我希望能够在配置文件中搜索变量 然后在该值中替换 插入我自己的设置 当然 您可以使用 sed 或 awk 来完成此操作 sed 示例 sed i s Andrew James
  • 如何替换“docker run”命令中的变量值

    我正在使用 bash 脚本并尝试分配指纹值 如下所示 export FINGERPRINT D0 19 C5 80 42 66 56 AC 6F docker run rm i v var run docker sock var run d
  • 如何将命令作为参数传递给 ssh [重复]

    这个问题在这里已经有答案了 我的需要是让这个命令起作用 sshpass p XXXX ssh oStrictHostKeyChecking no email protected cdn cgi l email protection sudo
  • Bash 脚本大小限制?

    我有一个 bash 脚本 在 RHEL 或 OS X 上运行时出现以下错误 第 62484 行 意外标记 换行符 附近出现语法错误 第 62484 行 o gz 这是一个自动生成的脚本 用于解决我公司使用的 Grid Engine 计算集群
  • tar 和 zip 有什么区别? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 tar 和 zip 有什么区别 每个的用例是什么 tar其本身只是将文件捆绑在一起 结果称为tarball 尽管zip也应用压缩 通常你使用gzip随
  • 如何将设备屏幕位置转换为发送事件位置?

    我知道关于input tap x yshell 命令 但是 我想了解如何 使用执行单击sendevent命令 我能够通过以下命令实现它 sendevent dev input event5 3 53 X sendevent dev inpu
  • 在 Linux 中禁用历史记录 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 要在 Linux 环境中禁用历史记录 我执行了以下命令 export HISTFILESIZE 0 export HISTSIZE 0 u

随机推荐