Linux中如何根據檔案的內容將另檔案中的某幾行刪掉

2021-04-16 07:44:17 字數 1014 閱讀 3420

1樓:

#!/bin/bash

cat 2.txt | while read line;dosed -i "/$line/d" 1.txtdone

利用shell指令碼如何提取一個檔案中某一特定行和下面若干行的內容

2樓:肥仙女

|豎1、在linux目錄/root下建立一個txt檔案,內容如下,使用|豎線分割,作為我們的實驗資料樣本。

2、sed用法、sed-n'xp'data.txt;顯示檔案x行資料,獲取第18行資料,即為sed-n'18p'data.txt。

3、sed-n'開始行,結束行p'data.txt;顯示檔案x行到y行的內容:命令:sed-n'10,18p'data.txt。

4、head/tail用法。tail用法:tail經常用來檢視檔案末尾的資料,在shell中可以獲取文字中指定資料行。

tail-n-3data.txt獲取檔案最好3行資料。tail-n+3data.

txt獲取檔案3到最後一行資料。

5、head用法:head經常用來顯示文字的前n行資料。head-n10data.txt顯示文字請10行資料。

6、tail和head的結合使用:例如獲取文字倒數第二行資料,結果如圖所示。命令:tail-n2data.txt|head-n1。

7、awk用法、awk在文字處理方面有著強大的功能,配合指令碼使用,可以列印指定行和列。awk'nr==18'data.txt。nr指定行號。

3樓:匿名使用者

一條語句搞定,假定你要找到最後一個abc以及後面的10行, 當然這條語句能夠執行的基礎是,1.log裡確實有abc這個字串,否則下面一條語句就會出現失敗,更好的方法是在指令碼中分成兩條語句,一條語句判斷是否有abc以及行號,第二條語句是用sed來列印。你可以自己根據下面的命令來搞定,我就不多說了。

sed -n "$(grep -n abc 1.log | tail -1 | cut -d : -f 1),+10p" abc.log

linux如何批量修改檔案裡內容啊

1.先將你上面的文字儲存為檔案 ts.txt 2.儲存如下指令碼為ts.sh並修改可執行許可權。bin bash cat ts.txt gawk iopath next 3.ts.sh ts1.txt 4.more ts1.txt 輸出如下,按照你的要求每個數 10 cell celltype or...

linux中怎樣刪除檔案的部分內容

vi txt 開啟 就能看到bai裡面的內容。按 i 進入編輯 du模zhi式,然後就可以輸入dao內容了,也可以移動游標到你回要刪除答內容的位置按刪除鍵來刪除內容。編輯完後可以按 esc 鍵盤左上角 進入命令模式。然後按 shift 進入末行模式。在末行模式下輸入wq 回車 就能儲存並且退出vi了...

檔案內容中的文字如何對齊,word檔案內容中的文字如何對齊?

用標尺上的滑標來對齊很方便的噢 你先定好第一行或某一行開始的位置,其他行不齊的話,你把游標定在該行,然後拖動標尺上的首行縮排滑標 就是最上邊那個倒三角 這時你就會看到文件左邊出現一條豎虛線,拖動滑標使該虛線與要對齊的那行的那個字對齊 注意 可以按住alt鍵精確拖動 這樣一定能使每行都對得齊齊的,你試...