2015-07-03 25 views
0

在此處輸入代碼我試圖從可用數據中篩選特定時間範圍內的日誌。使用echo和sed不工作的shell腳本

例如: - 一個事件發生在上午11:00左右,由於我失去了我的邊緣路由器的連接。所以,現在我正試圖在10:50 - 11:05的時間段內查看一個日誌文件,看看在這段時間內發生了什麼。

我嘗試使用這個腳本創建和它不工作

#!/bin/bash 

echo "Enter Filename" 
read filename 
echo "type start-time and hit [Enter]: " 
read word1 
echo "type end-time and hit [Enter]: " 
read word2 
sed -n '/$word1/,/$word2/p' $filename 

如果我沒有融入劇本我就可以得到所需的輸出發出sed命令。但是,我正在嘗試使用腳本在輸入值時執行它。

感謝

回答

2

使用sed命令是這樣的:

sed -n "/$word1/,/$word2/p" "$filename" 

問題是,外殼不展開單引號內的變量。如果要擴展變量,例如word1word2,請使用雙引號。

如果您不使用單引號或雙引號,則結果將受制於分詞,這可能不是您想要的。

+0

謝謝....它的工作。 –

+0

好,Njoy ..... :) – Ajit

+0

我想我說它太早,它的工作。 –