需要shell脚本代码,用于向filename添加日期和时间戳

时间:2015-08-21 08:09:44

标签: shell

我需要在文件名

中插入日期和时间戳

实施例: 如果输入文件名为abc.xyz.123.txt,则输出应为:

abc.xyz.123.yyyyddmmhhssmm.txt

它必须找到最后的地方。在文件名中出现并在该位置插入日期和时间戳。

请帮忙。

3 个答案:

答案 0 :(得分:0)

basename=`basename "$fullfile"`
extension="${basename##*.}"
now=`date +"%Y%d%m"`
replacement="$now.$extension"
file=${fullfile/$extension/$replacement}

另请参阅man date如何格式化日期输出。 您可以将数据写入文件,如下所示:

echo "file contents" > "$file"

编辑/更新:我已经阅读了“最后一次出现” - 部分内容。对不起,我更改了上面的代码来做你想做的事。

答案 1 :(得分:0)

outputfilename=${filename%.*}$(date +%Y%m%d%H%M%S).${filename##*.}

另请参阅:Extract filename and extension in Bash

答案 2 :(得分:0)

f=abc.xyz.123.txt
extension="${f##*.}"
filename="${f%.*}"
dt=`date +%Y%d%m%H%M%S`
echo "$filename.$dt.$extension"