You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于日期时间生成十六进制名称创建/重命名文件夹?现有命令失效

解决根据日期生成十六进制文件夹名的问题

核心需求实现

要把yyMMdd格式的十进制日期转成十六进制并创建文件夹,用printf是最简洁可靠的方式,它直接支持十进制到十六进制的格式转换:

1. 创建单个十六进制日期文件夹

# 生成小写十六进制日期字符串,存到变量里
HEX_DATE=$(printf "%x" $(date +%y%m%d))
# 创建文件夹
mkdir "$HEX_DATE"

或者一行直接执行:

mkdir $(printf "%x" $(date +%y%m%d))

如果需要大写十六进制,把%x换成%X即可。

2. 批量创建带子目录的嵌套文件夹

如果要创建十六进制日期/{1,2,3}这类嵌套结构,加上-p参数确保父目录自动创建:

HEX_DATE=$(printf "%x" $(date +%y%m%d))
mkdir -p "$HEX_DATE"/{1,2,3}

一行版本:

mkdir -p $(printf "%x" $(date +%y%m%d))/{1,2,3}

你之前命令的问题分析

  1. 语法嵌套错误:你用了<code>标签,这是Markdown语法,不是Shell命令的一部分,Shell无法识别,应该用$()或反引号来嵌套命令执行。
  2. bc命令用法错误:正确的进制转换写法应该是把obase=16和日期数字一起传给bc,比如echo "obase=16; $(date +%y%m%d)" | bc,但这种写法比printf繁琐。
  3. od命令用错场景:od -t x1是把字符串的每个字符转成对应的ASCII十六进制(比如数字'2'会转成32),而不是把整个十进制数字转成十六进制,不符合你的需求。

内容的提问来源于stack exchange,提问作者migarcoes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 11:10:37