第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

用于在一系列文件中進(jìn)行 grep 的 Shell 腳本

用于在一系列文件中進(jìn)行 grep 的 Shell 腳本

PHP
狐的傳說 2021-09-05 18:00:43
我正在設(shè)置一個腳本,該腳本通過read命令獲取一些用戶數(shù)據(jù)。使用這些數(shù)據(jù),我需要搜索文件范圍,然后進(jìn)行一些過濾。這是它的樣子,Enter fromtimeread fromtimeEnter totimeread totimeEnter the IDread id最初我通過 SSH 連接到服務(wù)器,然后在那里我有一個目錄,cd home/report/records這里有路徑記錄,我有:REC_201901020345.gz (yyyymmddhhmm)REC_201901120405.gzREC_201903142543.gz等等。這些文件包含數(shù)據(jù)以及$id.當(dāng)用戶輸入時$fromtime,$totime它將是 yyyymmddhh 格式。在這里,我需要轉(zhuǎn)到該范圍的文件,然后grep進(jìn)行$id顯示。例如:如果$fromtime是2019010103并且$totime是2019031425。我只需要轉(zhuǎn)到那些特定范圍的文件,即REC_201901020345.gz, REC_201901120405.gz,REC_201903142543.gz并執(zhí)行g(shù)rep以查找id用戶輸入的內(nèi)容。我已經(jīng)使用if條件嘗試過這個,但它似乎不起作用。我是編寫此類腳本的新手。當(dāng)我在這里描述所有內(nèi)容時可能會有錯誤。對不起。source config.shEnter fromtimeread fromtimeEnter totimeread totimeEnter the IDread idssh $user@$ipcd /home/report/records# <-- need to know what to add here as described here, to navigate to the# <-- specific range $fromtime-$totime. Then the command to find id will be zfgrep $id *.gz結(jié)果應(yīng)該只是id指定.gz文件范圍內(nèi)帶有' 的數(shù)據(jù)。
查看完整描述

2 回答

?
湖上湖

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個贊

試試下面的命令。

echo -e "$(ls -1 REC_????????????.gz 2>/dev/null)\nREC_${fromtime}##\nREC_${totime}##" | sort | sed -n "/##/,/##/p" | sed '1d;$d' | xargs zfgrep -a "$id"

解釋:
'fromdate' 和 'todate' 連同##(比如標(biāo)記)被附加到ls.
對輸入進(jìn)行排序,從而得到用標(biāo)記括起來的所需文件名。
Both sed,僅打印標(biāo)記之間的線條。
最后一個是命令,應(yīng)該為每個文件名執(zhí)行。

您可以省略管道和所有下一個命令,從結(jié)尾開始,并查看輸出是如何構(gòu)建的。


查看完整回答
反對 回復(fù) 2021-09-05
?
哈士奇WWW

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超6個贊

要獲取給定范圍(fromtime、totime)內(nèi)的文件列表,可以使用以下 shell 腳本:


declare -i ta

for file in REC*.gz

do 

    ta=$(echo "${file}" | grep -oP 'REC_\K(.*)(?=[[:digit:]]{2}.gz)')

    if [ "${ta}" ] ; then  

       if [ ${ta} -le ${totime} -a ${ta} -ge ${fromtime} ] ; then 

          echo -e "${file}"

       fi

    fi  

done


查看完整回答
反對 回復(fù) 2021-09-05
  • 2 回答
  • 0 關(guān)注
  • 158 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號