藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年6月26日 11:18


請教如何在文件中整塊移動某幾行到特定的位置

譬如我想把第5~20行移動到文件頭.
不用vi.不用臨時文件^_^

謝謝.

請教如何在文件中整塊移動某幾行到特定的位置

我的測試:
-->[code]
/home/lee#cat s
#!/bin/bash
a=$(($(sed -n '$=' tmp)+1))
cat tmp|tee >(sed -ne '1p' -ne '6,$p') >(sed -n '2,5p')|sed -n "$a,$"p[/code]-->

請教如何在文件中整塊移動某幾行到特定的位置

剛用vi搞了一個..謝謝烈火,我看看^_^,當會員了啊.請我們FB啊...

把後面9行移動到文件開頭:)
[code]LINE1=`wc -l $1 | awk '{print $1}'`
LINE2=`expr $LINE1 - 9 `
vi $1 <<EOF >/dev/null 2>&1
:$LINE1,$LINE2 m 0
:x
EOF
        echo "Info:   (3)Move the description to the head success."
[/code]
我這個要稍等一下才有結果^_^

請教如何在文件中整塊移動某幾行到特定的位置

請教如何在文件中整塊移動某幾行到特定的位置

能實現就好咯.
我在弄一個批量添加源碼註釋的東東...
呵呵:)
接了同事的工作,文件頭卻沒有文檔說明.我就給每個.c文件加註釋^_^

謝謝烈火.有空到杭州來請我FB,哈哈:)

請教如何在文件中整塊移動某幾行到特定的位置

AppLab 251% cat file1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

AppLab 252% more ok
#!/bin/sh
par1=`expr $2 - $1 + 1`
par2=`expr $1 - 1`
par3=`expr $2 + 1`
tail +$1 file1 | head -$par1>>file2
head -$par2 file1>>file2
tail +$par3 file1>>file2
AppLab 253%ok 5 20
AppLab 254%more file2

AppLab 253% more file2
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
1
2
3
4
21
22
23

請教如何在文件中整塊移動某幾行到特定的位置

謝謝樓上這位大哥...不用臨時文件哦^_^

請教如何在文件中整塊移動某幾行到特定的位置

用ed吧:
[code]ed - filename <<!
5,20m0
w
q
![/code]
看看是否合意!

請教如何在文件中整塊移動某幾行到特定的位置

請教如何在文件中整塊移動某幾行到特定的位置

>(sed -ne '1p' -ne '6,$p')
這裡可以簡寫成
>(sed -n '2,5!p')
:)

請教如何在文件中整塊移動某幾行到特定的位置

-->
謝謝一夢兄指點 :mrgreen:
PS:對進程替換還是暈,方便的話,一夢兄給咱講講! 如何?  :em18:

請教如何在文件中整塊移動某幾行到特定的位置

請教如何在文件中整塊移動某幾行到特定的位置

又學習了幾招,多謝各位了.

請教如何在文件中整塊移動某幾行到特定的位置

vim -c "norm 5G16dd1GP" -c "wq" file



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com