用shell計算某個檔案的生成時間

2021-08-20 14:29:48 字數 812 閱讀 6872

背景:例如,你可能會通過某個標識檔案的生成時間,來監控某個程序或某個應用,介紹乙個,計算某檔案生成時間的方法。

指令碼內容如下:

#!/bin/bash

dir=/opt/data

cd $dir

#顯示檔案的全時間ls --full-time

#只取日期

date="`ls --full-time 1.txt | cut -d ' ' -f 6`"

#只取時間

time="`ls --full-time 1.txt | cut -d ' ' -f 7`"

#當前時間

date_1="`date +'%y-%m-%d %h:%m:%s'`"

#換算成秒

second1="`date -d "$date_1" +%s`"

second2="`date -d "$date $time" +%s`"

#可以檢視一下

echo $second1

echo $second2

#計算時間差

sub="(($second1-$second2))"

#下邊可以用時間差做判斷,我這裡是如果1.txt生成的時間小於當前時間300s,並且jkkl的程序只有1個,則刪除該檔案

if (( $sub > 300 ));then

num=`ps -ef | grep jkkl | wc -l`

if (( $num == 1 ));then

cd $dir

rm -f 1.txt

fifi

個人觀點,歡迎指正

用shell生成xml檔案

突然有個想法,用shell生成xml檔案。現在開始 bin bash create by hellowordomain create time 20201227 tag num 0 結束乙個tag,傳輸的第乙個引數是要結束的tag的名稱,且再之後的所有元素減少乙個空格。function end ta...

shell複製除了某個檔案的操作

日期 date date y m d h m s find name xargs cp 這裡 xargs cp 怎麼區分cp源 和 cp目的 例如 想把 查詢到的檔案 都copy到 home users 中去 find name xargs cp home users cp命令在這裡就變成 cp h...

Shell,計算1到某個數的和(while迴圈)

read p please input a num num i 1sum 0 while i le num do sum sum i i i 1 done echo the number is sum read 輸入乙個數並獲取 共8個引數,常用引數如下 p指定要顯示的提示 s靜默輸入,一般用於密碼...