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

求助:Bash脚本中date函数生成Vim日期命名文件失败

修正Bash脚本生成日期命名文件的问题

你的脚本核心问题是日期变量的赋值错误:$'date +"%m-%d-%y"' 只是将字符串date +"%m-%d-%y"赋值给变量,并没有执行date命令获取实际日期,导致最终文件名变成date.txt。

修正后的基础脚本

#!/bin/bash

# 使用$()执行date命令,获取指定格式的当前日期
CURRENTDATE=$(date +"%m-%d-%y")
udisksctl mount -b /dev/sda2
# 用双引号包裹带空格的路径,避免cd命令解析错误
cd "/run/media/harrison/Backup Disk/journal"
vim "${CURRENTDATE}.txt"

进阶优化(增加挂载失败判断)

可以添加挂载成功检查,避免硬盘挂载失败后执行后续命令报错:

#!/bin/bash

CURRENTDATE=$(date +"%m-%d-%y")
# 判断挂载命令是否执行成功
if udisksctl mount -b /dev/sda2; then
    # 只有cd成功后才打开vim
    cd "/run/media/harrison/Backup Disk/journal" && vim "${CURRENTDATE}.txt"
else
    echo "硬盘挂载失败"
    exit 1
fi

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 23:15:03