ใน OS X ฉันชอบวันที่ของฉันที่จะอยู่ในรูปแบบของ YYYY-MM-DD HH:MM
ผลลัพธ์สำหรับไฟล์
ดังนั้นเพื่อระบุไฟล์ฉันจะใช้:
stat -f "%Sm" -t "%Y-%m-%d %H:%M" [filename]
ถ้าฉันต้องการเรียกใช้ในช่วงของไฟล์ฉันสามารถทำสิ่งนี้:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
done
ตัวอย่างนี้จะพิมพ์ออกมาในครั้งสุดท้ายที่ฉันรันsudo periodic daily weekly monthly
คำสั่งเนื่องจากอ้างอิงไฟล์บันทึก
หากต้องการเพิ่มชื่อไฟล์ภายใต้แต่ละวันฉันจะเรียกใช้สิ่งต่อไปนี้แทน:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
echo "$i"
done
ผลลัพธ์จะเป็นดังนี้:
2016-40-01 16:40
/var/log/daily.out
2016-40-01 16:40
/var/log/monthly.out
2016-40-01 16:40
/var/log/weekly.out
น่าเสียดายที่ฉันไม่แน่ใจว่าจะป้องกันการแตกบรรทัดและคงชื่อไฟล์ต่อท้ายวันที่โดยไม่ต้องเพิ่มบรรทัดเพิ่มเติมในสคริปต์
PS - ฉันใช้#!/usr/bin/env bash
เพราะฉันเป็นผู้ใช้ Python ในแต่ละวันและbash
ติดตั้งรุ่นต่างๆในระบบของฉันแทน#!/bin/bash