我有一個這樣的txt檔案:
chr1 1300000 1350000
chr1 1335278 1349418 - 14141 DVL1 0
chr1 1500000 1550000
chr1 1335278 1349418 - 14141 DVL1 -150583
chr1 1950000 2000000
chr1 1785285 1891117 - 105833 GNB1 -58884
我想把每兩行串聯起來(像這樣)
chr1 1300000 1350000 chr1 1335278 1349418 - 14141 DVL1 0
chr1 1500000 1550000 chr1 1335278 1349418 - 14141 DVL1 -150583
chr1 1950000 2000000 chr1 1785285 1891117 - 105833 GNB1 -58884
我在谷歌上搜索過,我試過paste -s -d '
'檔案,但沒有達到預期效果。
有什么建議嗎?
謝謝!
uj5u.com熱心網友回復:
我建議玩一下...
#cat test.txt
chr1 1300000 1350000
chr1 1335278 1349418 - 14141 DVL1 0
chr1 1500000 1550000
chr1 1335278 1349418 - 14141 DVL1 -150583
chr1 1950000 2000000
chr1 1785285 1891117 - 105833 GNB1 -58884
#printf "%s
" "$(cat test.txt|grep -o -E 'chr1.*[0-9]{7}.*[-].*[A-Z].*') " >test.res
#cat test.res
chr1 1335278 1349418 - 14141 DVL1 0
chr1 1335278 1349418 - 14141 DVL1 -150583
chr1 1785285 1891117 - 105833 GNB1 -58884
uj5u.com熱心網友回復:
從終端你可以這樣做:
$ echo -n "chr1 1300000 1350000 " >> file.txt
$ echo -n "chr1 1335278 1349418 - 14141 DVL1 0" >> file.txt
-n防止echo函式添加新行。
uj5u.com熱心網友回復:
嘗試:
sed 'N;s/
//'檔案
但是你可以只:
while IFS= read -r line1 && IFS= read -r line2; do
echo "$line1 $line2"
done <檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/332439.html
標籤:
