1
我們有許多RTF文件,我們需要在Oracle EBS中將它們上傳到各自的類別。爲此,我們需要閱讀存儲在RTF文件的文檔屬性中的一些信息。這些字段是標題,主題,作者,公司和類別。從shell腳本中提取RTF文件中的信息
當我們在記事本中打開一個RTF文件時,我們可以看到這個信息,但不知道如何使用linux命令解壓縮它。使用grep並不是很成功。
我粘貼在這裏RTF文件的組成部分持有該信息
\mwrapIndent1440\mintLim0\mnaryLim1}{\info**{\title ^XXSLS_GBL_ORDACK^}****{\subject XXSLS}****{\author ^es_ES,es_FR,ES_IT,ES_de^}**{\doccomm $Header: XXSLS_GBL_ORDACK_ES_ES.rtf $}
{\operator }{\creatim\yr2012\mo11\dy11\hr14\min3}{\revtim\yr2013\mo3\dy2\hr10\min43}{\version24}{\edmins361}{\nofpages4}{\nofwords725}{\nofchars14202}{\*\manager }{\*\company }**{\*\category ^BD^}**{\nofcharsws14898}
{\vern32773}}{\*\userprops {\propname _DocHome}\proptype3{\staticval -974575144}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw11850\paperh18144\margl851\margr851\margt851\margb0\gutter0\ltrsect
有人可以請建議如下,我們可以如何提取此信息:
Title=^XXSLS_GBL_ORDACK^
Subject=XXSLS
Author=^es_ES,es_FR,ES_IT,ES_de^
Category=^BD^
感謝斯蒂芬。在命令提示符下,這些命令完美工作但是,當我嘗試將輸出分配給像這樣的變量TITLE ='grep -oE'\ {\\ title [^ \}] +'file.rtf'時,它什麼都不返回(null)。任何想法爲什麼? – Nitin 2013-03-04 13:01:10
如何將** grep -oE'\ {\\ title [^ \}] +'file.rtf **的結果賦值給一個變量?它不像我們通常那樣工作,就像'VAR_TITLE ='grep -oE'\ {\\ title [^ \}] +'file.rtf''。這種方式變量具有空值。 – Nitin 2013-03-04 14:19:03
要將命令的結果分配給bash中的變量,您需要將該命令放入反引號中。我無法在這裏看到你,因爲它們對評論格式有特殊意義。在你正在嘗試的單引號替換單引號。 – 2013-03-04 14:24:58