bash腳本。我怎樣才能得到一個簡單的while循環要經過下面內容的文件,並剝離出在T所有的字符(包括T)使用的sedbash腳本去除一些字符
"2012-05-04T10:16:04Z"
"2012-04-05T15:27:40Z"
"2012-03-05T14:58:27Z"
"2011-11-29T15:04:09Z"
"2011-11-16T12:12:00Z"
感謝
bash腳本。我怎樣才能得到一個簡單的while循環要經過下面內容的文件,並剝離出在T所有的字符(包括T)使用的sedbash腳本去除一些字符
"2012-05-04T10:16:04Z"
"2012-04-05T15:27:40Z"
"2012-03-05T14:58:27Z"
"2011-11-29T15:04:09Z"
"2011-11-16T12:12:00Z"
感謝
通過戰略經濟對話
sed 's/"\|T.*//g' file
"
相配的雙引號\|
或T.*
從第一個T
開始匹配所有字符到最後一個。用空字符串替換匹配的字符會給你所需的輸出。
實施例:
$ echo '"2012-05-04T10:16:04Z"' | sed 's/"\|T.*//g'
2012-05-04
簡單awk命令做到這一點:
awk -F '["T]' '{print $2}' file
2012-05-04
2012-04-05
2012-03-05
2011-11-29
2011-11-16
在bash內建的:
while IFS='T"' read -r a a b; do echo "$a"; done < filename
輸出:
2012-05-04 2012-04-05 2012-03-05 2011-11-29 2011-11-16
謝謝....工作但只有一件事。仍然有最初的「從現在開始嘗試 – del 2014-12-07 15:56:48
,....... – 2014-12-07 15:59:25
你可以同樣刪除」出來的結果文本。爲了達到這個目的,在「T」之前知道你是否希望其他人「現在在場」可能很有趣。我知道所顯示的代碼沒有。 – tvCa 2014-12-07 15:59:42