在一個純文本檔案中,我試圖從
獲取專案1
專案2
to
"專案1" "專案2"
我嘗試使用tr命令(cat FILE.txt | tr "
" "" "")。)
但這并不奏效。
我還試著用cat FILE.txt | tr ' '" ""。
'" "",但同樣,沒有用。
誰能幫我做一下?
另外,作為一個額外的問題,獲得第一個雙引號的最簡單方法是什么? 用我的方法,如果我得到了它的作業,我最終會得到:
Item 1" "/span>Item 2"
P.S. 感謝Jorengarenar幫助我進行編輯。
uj5u.com熱心網友回復:
一種可能性是使用awk.
。awk '{ printf " " ""$0"" }' FILE
對于獎勵問題,只要去掉$0變數后面的第二個引號即可。
awk '{ printf " " " "$0"" }' FILE
如果你想要另一個分隔符,你可以把第一個引數改成你喜歡的樣子。
uj5u.com熱心網友回復:
試試這個:
awk '{printf spacer "" $0 ""; spacer=" "} END {print ""}' FILE.txt
解釋:對于每一行,這將列印一個spacer(最初是空的),一個字面的雙引號,原始行(不包括其結束的換行),和另一個字面的雙引號。然后,它將spacer設定為一個空格,這樣,除了第一行之外,所有的行都會在其前面列印一個空格。printf不添加換行,所以所有這些都被列印成一個長行。但是在最后,我們需要添加一個最后的換行符,一個普通的print就可以解決這個問題。
uj5u.com熱心網友回復:
如果你想改變檔案本身,一種方法是使用ed:
ed -s file.txt <<'EOF'/span>
1,$ s/^/"/"。
1,$ s/$/" /
1,$ j
w
EOF
首先在每一行的開頭加一個雙引號,然后在結尾加一個雙引號和空格,最后j將所有的行合并成一行,w將修改后的檔案寫回磁盤。
uj5u.com熱心網友回復:
分兩步。
1.cat FILE.txt | tr ''
'' '
2.sed -E 's:([a-zA-Z0-9] ): "1":g' FILE.txt
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/324015.html
標籤:
