我用谷歌搜索了又用谷歌搜索,但我找不到任何帮助或与我的问题相关的帖子...
如何在 bash 脚本中指定一个刚刚加了时间戳的文件?非常感谢您的宝贵时间。
基本示例:
#!/bin/sh
touch $(date +'%Y-%m-%d_%H-%M-%S').log
program --start --output /home/user/.logs/the_above_timestamped_file.log
具体示例:
下面的代码是一个不工作的 bash 脚本,程序没有成功写入带时间戳的日志文件,或者程序找不到带时间戳的日志文件?或者它可能不知道要写入哪个文件,因为带时间戳的文件是日志目录中的众多文件之一。希望我知道如何解决这个问题......
#!/bin/sh
# start the logkeys service
# create a timestamped file
# append key logging to that file
LOG_FILE_NAME=$(date +'%Y-%m-%d_%H-%M-%S')_key.log
touch "/mnt/WDRED6TBHDD/text/keylog/$LOG_FILE_NAME"
sudo logkeys --start --output "/mnt/WDRED6TBHDD/text/keylog/$LOG_FILE_NAME"
最佳答案
用日期字符串创建一个变量并重用它。
#!/bin/sh
DATE_STR=$(date +'%Y-%m-%d_%H-%M-%S')
touch "$DATE_STR.log"
program --start --output "/home/user/.logs/$DATE_STR.log"
或者整个文件名。
#!/bin/sh
LOG_FILE_NAME=$(date +'%Y-%m-%d_%H-%M-%S').log
touch "$LOG_FILE_NAME"
program --start --output "/home/user/.logs/$LOG_FILE_NAME"
关于linux - 如何在刚刚加了时间戳的脚本中指定一个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51992502/