相关疑难解决方法(0)

按当前日期创建tar文件和命名

我正在尝试在bash中创建一个备份脚本,以tar文件夹的内容并将生成的文件移动到某个地方,但我真的不知道该怎么做.

#!/bin/bash
name="$date +"%y-%m-%d""
tar -zcvf $name code
Run Code Online (Sandbox Code Playgroud)

但结果是该文件刚刚命名+%y-%m-%d.如何更改脚本以按预期的日期命名文件?

预期产量: 2013-08-29.tar

bash

38
推荐指数
2
解决办法
5万
查看次数

在linux中将日期附加到文件名

我想在文件名旁边添加日期("somefile.txt").例如:somefile_25-11-2009.txt或somefile_25Nov2009.txt或其他任何效果

也许脚本会在终端窗口中执行或执行某些命令.我正在使用Linux(Ubuntu).

提前致谢.

哦,我几乎忘了添加脚本或命令应该每次要将文件保存到特定文件夹但仍保留以前的文件时将文件名更新为新的日期.所以文件夹中最终会有这样的文件:filename_18Oct2009.txt,filename_9Nov2009.txt,filename_23Nov2009.txt

linux ubuntu filenames rename append

26
推荐指数
5
解决办法
7万
查看次数

Bash别名使用文件名中的当前时间戳创建文件

我正在尝试创建一个bash别名,每次调用别名时都会打印当前的UNIX时间戳.我的bash配置文件中包含以下内容:

alias unix="echo "$(date +%s)""
Run Code Online (Sandbox Code Playgroud)

但是,似乎一旦获取bash配置文件,就会存储当前的unix时间戳,并且每次调用别名时它都不会更改.

例如,如果我将unix别名分别调用三次10秒,则输出始终相同.如何创建一个别名来评估调用别名时的unix时间戳.这可能吗?

unix linux bash shell

5
推荐指数
1
解决办法
3573
查看次数

从systemd bash内联脚本创建文件名_ $(日期%Y-%m-%d)

我正在尝试执行一个systemd计时器,并希望每个日期将执行的脚本的输出保存在文件中.这是我ExecStart.service文件中的脚本:

ExecStart=/bin/bash -c 'echo $(date +%Y-%m-%d) >> /home/username/test_output_$(date +%Y-%m-%d).log'
Run Code Online (Sandbox Code Playgroud)

这会创建文件,但会添加"哈希"而不是月份名称:

~/test_output_2017-ea3c0c2dd56c499a93412641e41008db-01.log
Run Code Online (Sandbox Code Playgroud)

内容是一样的:

2017-ea3c0c2dd56c499a93412641e41008db-01
Run Code Online (Sandbox Code Playgroud)

如果我/bin/bash -c 'echo $(date +%Y-%m-%d)'在shell中运行而不通过systemd服务传递它,它会按预期工作.印刷品: 2017-09-01.

%m除了systemd环境中的月份数之外,它代表什么?

知道如何设置systemd服务以将脚本的标准输出放入具有当前日期的文件中吗?预期结果: test_output_2017-09-01.log

谢谢.

linux bash inline date systemd

5
推荐指数
1
解决办法
2625
查看次数

标签 统计

bash ×3

linux ×3

append ×1

date ×1

filenames ×1

inline ×1

rename ×1

shell ×1

systemd ×1

ubuntu ×1

unix ×1