2014-04-11 81 views
1

* 我有問題*無法日期變量比較UNIX

而在if語句比較日期變量,因爲我得到一個日期變量的值是「$「2014年4月19日\ r '「,另一個是2014-04-19。

我怎麼知道變量的值是可變的這種

通過設置-x財產在我的shell腳本

值,如果條件已經表明了我在命令行下面是 -

+ $「2014年4月19日\ r」 == 2014年4月19日]

那麼,如何比較,因爲在簡單的文本格式都變看起來一樣的,我想是真實的, conditi上。 才能刪除$ '和\ R' 從變量...

+0

'$'2014-04-19 \ r''從哪裏來?你能顯示你正在談論的代碼的一部分,而不僅僅是一個跟蹤輸出嗎? – lurker

+0

我有輸入文件,其數據看起來像 - + echo $'65572 | 42 | 33115 | 0 | P | 598 || 2014-04-09 | 2014-04-19 \ r' 我必須做的操作進入最後一列,所以我正在削減它,所以我有從最後一列的價值.. –

+0

我們可以刪除除日期格式之外的那些額外的東西..任何如何? –

回答

0

可以使用[[ and ]]比較BASH這樣的:

s=$'2014-04-19\r' 

[[ "$s" == '2014-04-19'? ]] && echo "similar" 

或者更確切地說:

[[ "$s" == '2014-04-19'$'\r' ]] && echo "similar" 
0

可以使用像:

sed 's/\'\\r\'//g' <your_input_file> your_output_file 

它將用空格替換不需要的字符串。