1. 程式人生 > >查詢關鍵字(輸出檔名和關鍵字所在行號)

查詢關鍵字(輸出檔名和關鍵字所在行號)

#!/bin/sh

FILENAMES=

for i in `find /home/`
do
        file $i | grep "text"
        if [ "$?" == "0" ];then
        {
echo $i
                FILENAMES=$i
                cat $i | grep -n "html" | awk '{ print "'${FILENAMES}'",$0 }' >> /tmp/log.txt
        }
        fi
done

FILENAMES是shell變數,而awk是Linux中獨立於shell的一個工具。在awk中如果要解析shell變數,需要將變數拿到awk的作用域外面來,即先關閉awk的單引號,引用變數後再次開啟。
echo $str | awk -F, '{print '$FILENAMES'}'

相關推薦

查詢關鍵字(輸出檔名關鍵字在行)

#!/bin/sh FILENAMES= for i in `find /home/` do file $i | grep "text" if [ "$?" == "0" ];then { echo $i

參數定義的順序必須是:必選參數、默認參數、可變參數、命名關鍵字參數關鍵字參數。

順序 最好 lis 調用函數 code 默認值 對象 直接 語法 在Python中定義函數,可以用必選參數、默認參數、可變參數、關鍵字參數和命名關鍵字參數,這5種參數都可以組合使用。但是請註意,參數定義的順序必須是:必選參數、默認參數、可變參數、命名關鍵字參數和關鍵字參數。

Awk讀取檔案第5到第十內容輸出其中包含a關鍵字以及內容

awk 'NR>=5&&NR<=10&&match($0,'a'){print NR,$0}' awk命令形式: awk [-F|-f|-v] ‘BEGIN{} //{command1; command2} END

Android實現列表仿聯絡人快速查詢關鍵字搜尋

 列表按字母順序排序,右側實現根據首字母快速查詢,輸入框輸入首字母或元素第一個字也可以實現快速查詢。 頁面佈局如下: <LinearLayoutxmlns:andro

1.查詢目錄下所有包含關鍵字檔名

import java.io.File; import java.util.Scanner; public class TestDemo { public static String key; public static void showFile( File ro

sqlserver 時間段 關鍵字 查詢 Mybatis

where <if test="pd.startDate!=null and pd.startDate!='' and pd.endDate!=null and pd.endDate!=''"> a.CREATE_DATE between #{p

修飾符關鍵字繼承(一)

ati 構造 pub 常用 另一個 修飾 tro pri 修飾符 一、靜態修飾符----static   static可以修飾內部類、塊、屬性、方法,經static修飾過的元素儲存地址唯一,不會改變 1 public class Test{ 2 static

5.4-全棧Java筆記:面向對象進階之對象的轉型 | FINAL關鍵字 |抽象方法抽象類

java對象的轉型(casting)引用變量只能調用它編譯類型的方法,不能調用它運行類型的方法。這時,我們就需要進行類型的強制轉換!【示例1】對象的轉型public class TestCasting { public static void main(String[] args) {

轉載學習 多線程中的內存模型關鍵字

問題 jvm 可見性 無法 互斥 讓其 不一致 解鎖 讀取 類比與現代計算機的主存與cache,JVM中規定了 所有變量都存儲在主內存中(類比計算機的主存),然後每條線程有自己的工作內存(類比每個處理器的cache)。線程的工作內存中保存了該線程需要用到的

python-標識符(Identifiers)關鍵字(keywords)

except assert exe 含義 print 交互 使用 oba 標識符 標識符:Identifiers 標識符必須以字母(大小寫均可)或者"_"開頭,接下來可以重復0到多次(字母|數字|"_") 特點:   1.沒有長度限制   2.區分大小寫

grep 同時滿足多個關鍵字、滿足任意關鍵字排除關鍵字

排除 計數 not uniq 排序 word note cut 多個 1. 同時滿足多個關鍵字 grep "word1" file_name | grep "word2" | grep "word3" 2. 滿足任意關鍵字 grep -e "word1" -e "word2

Python 標示符關鍵字

標示符 lis bsp 開發人員 ng- 大小寫 -type one with   標示符     開發人員在程序中自定義的一些符號和名稱、標示符是自己定義的,如變量名 、函數名等      標示符的規則     標示符由字母、下劃線和數字組成,且數字不能開頭     註:

一張圖講解對象鎖關鍵字synchronized修飾方法

www. 堅持 測試 共享資源 成長 和我 核心技術 資源 rri 每個對象在出生的時候就有一把鑰匙(監視器),那麽被synchronized 修飾的方法相當於給方法加了一個鎖,這個方法就可以進行同步,在多線程的時候,不會出現線程安全問題。 下面通過一張圖片進行講解: 1.

一張圖講解對象鎖關鍵字synchronized修飾方法(代碼塊)

簡單 讓我 同步 所有 鑰匙 可能 轉換 java 有關   每個對象在出生的時候就有一把鑰匙(監視器Monitor),那麽被synchronized 修飾的方法相當於給方法加了一個鎖,這個方法就可以進行同步,在多線程的時候,不會出現線程安全問題。    註:Monitor

Oracle11g select查詢時候輸出為選定

大寫 mit sel 沒有 image 提交 11g 分享 oracle 解決方法是: 查詢的表名是否是大寫的; 是否沒有提交執行結果:可以commit一下; Oracle11g select查詢時候輸出為選定行

用python比較兩個文件中內容的不同之處, 並輸出內容.

exist file diff pre ffline += == list cmp 代碼部分: ‘‘‘cmpfile.py - 比對兩個文件, 如果有不同之處, 打印內容和行號‘‘‘ import os class cmpFile: def __init__(

Python-可變參數關鍵字參數(*args **kw)

但是 用戶名 輸入 ext 如果 接收 關鍵字參數 都是 習慣 前言: Python的函數具有非常靈活的參數形態,既可以實現簡單的調用,又可以傳入非常復雜的參數。 可變參數和關鍵字參數的語法: *args是可變參數,args接收的是一個tuple; **kw是關鍵字參

標識符關鍵字

ges 組成 shadow oba 做到 roc lam port type 標識符和關鍵字<1>標識符什麽是標識符,看下圖: 開發人員在程序中自定義的一些符號和名稱 標識符是自己定義的,如變量名 、函數名等 <2>標識符的規則標識符由字母、下劃線和

關鍵字的定義特點

xtend ase lse 訪問 cat pub 類之間關系 switch bstr 定義:被Java語言賦予了特殊含義,用作專門用途的字符串(單詞)特點:關鍵字中所有字母都為小寫 用於定義數據類型的關鍵字: class interface enum byte sh

Python學習筆記函數之關鍵字參數print()

round 分隔符 pre 圖片 end 字符 去掉 imp world! 隨筆記錄方便自己和同路人查閱。 #------------------------------------------------我是可恥的分割線--------------------------