linux下如何獲得特定字串前後幾行文字
如果要獲得一個檔案中的最後幾行,使用tail命令就可以很方便的實現。但在有些時候,會需要用到如標題中所描述的功能。
我舉一個具體的例子:在使用VASP計算彈性常數時,結果就是在字串“TOTAL ELASTIC MODUII” 之後的幾行,但這整個部分是在檔案的中間,如果將這部分資料提取出來呢?
使用grep命令可以比較輕鬆達到目的,具體使用如下:
01 |
$
grep
-A|B n "key"
file
|
其中:
- A:表示在字串之前
- B:表示在字串之後
- n:要獲取多上行文字
- key:為要查詢的字串
- file:檔名
比如上面提到的例子中,可以使用如下命令獲取彈性常數:
01 |
$
grep
-A 10 "TOTAL ELASTIC"
OUTCAR
|
獲取的幾行文字可以通過管道傳遞給其他命令進行進一步的提取或使用。
參考:http://walakq.i.sohu.com/blog/view/168796199.htm
相關推薦
linux下如何獲得特定字串前後幾行文字
如果要獲得一個檔案中的最後幾行,使用tail命令就可以很方便的實現。但在有些時候,會需要用到如標題中所描述的功能。 我舉一個具體的例子:在使用VASP計算彈性常數時,結果就是在字串“TOTAL ELASTIC MODUII” 之後的幾行,但這整個部分是在檔案的中間,如果
linux下檢視某關鍵詞前後幾行內容
1、一個比較方便直接的辦法是 檢視filename中含有abc所在行後4行內容 cat filename | grep abc -A4 檢視filename中含有abc所在行前4行內容 cat filename | grep abc -B4 2、
Linux ubuntu centos 下 grep顯示前後幾行信息
itl .cn 標準 href clas -c grep www. rep 標準unix/linux下的grep通過下面參數控制上下文grep -C 5 foo file 顯示file文件裏匹配foo字串那行以及上下5行grep -B 5 foo file
grep -A -B -C 顯示抓取的前後幾行參數
參數 tween line 字串 抓取 his 站點 顯示 ces 我經常用grep找東西,比如用戶名和密碼。大部分站點和用戶名和密碼都是在一樣的,方便grep查找。有時,為了文本好看,我會放在多行。比如 wikipedia多個語言版本上有多個賬號,就放在wikipedia
利用grep參數查看某關鍵詞前後幾行內容
RR font account -a stderr 所在 std ntc span 查看文件中含有“哈哈哈”關鍵字所在行後5行內容 cat xxxxxx | grep -A 5 哈哈哈 查看文件中含有“哈哈哈”關鍵字所在行前5行內容 cat xxxxxx | grep
linux下提高程式碼質量的幾個工具
1、測試程式碼覆蓋率 gcov 2、程式碼靜態測試 splint 3、記憶體洩漏測試 valgrind --tool=memcheck --leak-check=yes ./file 4、效能測試 gpro
Linux下檢視檔案內容的幾種常用命令
【常用】 1,cat 由第一行開始顯示內容,並將所有內容輸出 cat的功能是將檔案從第一行開始連續的將內容輸出在螢幕上。但是cat並不常用,原因是當檔案大,行數比較多時,螢幕無法全部容下時,只能看到一部分內容。 cat語法:cat [-n] 檔
Linux下獲得程序id和程序名字
1. 通過程序名字得到程序id。 pid_t getProcessPidbyName(char *name) { FILE *fptr; char *buf = new char[255]; char cmd[255] = {'\0'}; p
linux檢視檔案的前/後幾行
tail -n 20 filename 說明:顯示filename最後20行。 Linux下tail命令的使用方法 linux tail命令用途是依照要求將指定的檔案的最後部分輸出到標準裝置,通常是終端,通俗講來,就是把某個檔案檔案的最後幾行顯示到終端上,假設該檔案有更
linux 下基於特定通訊協議利用多執行緒同步通訊機制實現的串列埠通訊
</pre><pre name="code" class="cpp">/** *@Title:利用多執行緒同步通訊機制實現串列埠通訊 *@Introduce:主要完成根據特定的通訊協議實現串列埠與PC上特定串列埠 * 通訊軟體的通訊。測試版,只
linux下程序間通訊的幾種主要方式簡介
共享記憶體是執行在同一臺機器上的程序間通訊最快的方式,因為資料不需要在不同的程序間複製。通常由一個程序建立一塊共享記憶體區,其餘程序對這塊記憶體區進行讀寫。共享記憶體往往與其它通訊機制,如訊號量結合使用,來達到程序間的同步及互斥。 首先要用的函式是shmget,它獲得一個共享儲存識別符號。
linux下獲得root許可權執行程式
在linux下系統的預設root使用者是不被啟用的,這和MS windows的做法恰恰相反,windows XP卻是安裝好系統好,就給你建立一個自動登入的管理員使用者,不過Linux不一樣的這一點也大大地增加了系統的安全性,但同時對我們的操作使用有了些特別的要 求
Linux下獲得檔案屬性及檔案結構體的使用
第一種,通過路徑的方法 int stat(const char *path, struct stat *_stat); int lstat(const char *path,struct stat *_stat); 兩者的第一個引數都是檔案的路徑,第二
pandas.DataFrame中刪除包涵特定字串所在的行
你在使用pandas處理DataFrame中是否遇到過如下這類問題?我們需要刪除某一列所有元素中含有固定字元元素所在的行,比如下面的例子:如果要刪除的元素固定有更簡單的方法,可參考另一篇博文:http://blog.csdn.net/htbeker/article/detai
linux 下獲得當前目錄,上級目錄,資料夾名
$PWD /pwd 當前目錄 dname= $(dirname "$PWD") 上級目錄 basename '$PWD' 當前資料夾名 !=====以下轉載 刪除包含特定字元的行: g/pattern/d 刪除不包含指定字元的行: v
linux 命令列分割字串的幾種方法
使用xargs echo '[email protected]@33' | xargs -d '@' -n 1 echo | sed '$d' 使用awk echo '[emai
Linux下執行緒同步的幾種方法
Linux下提供了多種方式來處理執行緒同步,最常用的是互斥鎖、條件變數和訊號量。一、互斥鎖(mutex) 鎖機制是同一時刻只允許一個執行緒執行一個關鍵部分的程式碼。 1. 初始化鎖 int pthread_mutex_init(pthread_mutex_t *m
Linux下執行緒同步的幾種常見方法
Linux下提供了多種方式來處理執行緒同步,最常用的是互斥鎖、條件變數和訊號量。一、互斥鎖(mutex) 鎖機制是同一時刻只允許一個執行緒執行一個關鍵部分的程式碼。 1. 初始化鎖 int pthread_mutex_init(pthread_mutex_t *mutex
Debian Linux 下獲得Root許可權以及使用Root登入影象介面的辦法
我也是一個Debian Linux 的初學者,在寫這個文章的時候我裝Linux 不到12小時,對於一個從Windows轉過的來攻城師來說異常的痛苦。 Debian Linux 下獲得Root許可權問題我也是研究了許久,網上關於這個的文章也是一大堆,但是沒有一個能解決我的問題
linux下查詢特定時間段內生成的檔案
如下,查詢9點到11點生成的檔案,不包括9和11,即查詢10點生成的檔案 方法1: ls -l 20120816bak|awk '{split($7,hour,":");if(hour[1]>9 &&hour[1]<11) print}'方法2: