簡體   English   中英

需要Shell腳本來獲取創建的文件名

[英]Need Shell script for getting the file name created

我正在編寫腳本以獲取成功創建或失敗的特定文件的輸出。

示例:每天都會在路徑/ x / y / z /中創建一個名稱為abc.out_timestamp的文件。

我正在工作的腳本需要檢查文件是否今天創建,並相應地顯示輸出。

Path : /x/y/z have the below files
abc.out0114181500
abc.out0115181600
abd.out0116182100

要運行的腳本:

#!/bin/bash
TODAY=$(date +%m%d%y)

cd /x/y/z

if [ -f abc.out_$TODAY ]
then
      echo "$file creation successful"
else
     echo "$file creation not successful"
fi

收到的輸出:文件創建不成功(盡管今天已創建文件)預期的輸出:文件創建成功

我該如何糾正,有人可以讓我知道如何成功創建文件時輸出。

謝謝

您已經完成了98%

#!/bin/bash
TODAY=$(date +%m%d%y)

cd /x/y/z

if [ -f abc.out${TODAY}???? ]
then
     echo "$file creation successful"
else
     echo "$file creation not successful"
fi

模式abc.out${TODAY}???? 將文件名與今天的日期匹配,后跟另外4個字符(並且沒有下划線,這是虛假的)。

如果您想進行更多驗證,請使用

if [ -f abc.out${TODAY}[0-2][0-9][0-5][0-9] ]

我希望abd. 是一個錯字,而且確實是abc. 但是,如果它可以是abcabd ,則可以使用

if [ -f ab[cd].out${TODAY}[0-2][0-9][0-5][0-9] ]

暫無
暫無

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

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