簡體   English   中英

如何向bash腳本添加時間戳?

[英]How to add a timestamp to bash script?

我正在運行一個腳本來檢查安全漏洞。 如何將時間戳添加到腳本中,結果將進入 /var/log/security-check 中的文件

#!/bin/sh

# watch accounts - keep an eye on /etc/passwd,
#                  report if accounts change

secretcopy="$HOME/.watchdb"
tempfile="$HOME/.watchdb.new"
passwd="/etc/passwd"
compare=0               # by default, don't compare

trap "/bin/rm -f $tempfile" 0

if [ -s "$secretcopy" ] ; then
  lastrev="$(cat $secretcopy)"
  compare=1
fi

cat $passwd | cut -d: -f1 > $tempfile

current="$(cat $tempfile)"

if [ $compare -eq 1 ] ; then
  if [ "$current" != "$lastrev" ] ; then
    echo "WARNING: password file has changed"
    diff $secretcopy $tempfile | grep '^[<>]' |
        sed 's/</Removed: /;s/>/Added:/'
  fi
else
   mv $tempfile $secretcopy
fi

exit 0

修改后的每個文件都帶有時間戳。 您可以執行ls -l來檢查。 此外,如果您需要為任何文件添加時間戳,只需使用 touch。 如果它不存在,則觸摸創建。 如果存在,您傳遞給它的腳本的時間戳將更新為最新時間。

如果要單獨向文件添加時間戳,請使用:

date +"%T” > "filename"

這篇文章為答案添加了更多細節。

如果您想將文件標記為最新時間:

touch filename

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM