我想解析Linux服务器上/X
的日志文件。
以下是场景:
/X
如何检索最新日志文件的文件名?
答案 0 :(得分:1)
#!/bin/bash
dir=/X
for file in "${dir}"/*; do
[ -f "${file}" ] || continue
[ "${file}" -nt "${newest}" ] && newest=${file}
done
echo "the most recentently modified file is '${newest}'"
答案 1 :(得分:1)
嗨Abhinav如果您只想获取文件名,可以使用ls -Art |脚本中的tail -n 1命令。
答案 2 :(得分:0)
ls -t
将按修改时间对文件进行排序(在您的情况下,它与创建时间相同,因为文件只写入一次),head -1
将给出第一个文件,即最新文件:
ls -t /X | head -1
我认为更为常见的一个小变化是反向列出(-r
)并使用tail
:
ls -rt /X | tail -1