Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
gf — grep के चारों ओर एक रैपर, जो आपको चीज़ें grep करने में मदद करता है | Kitploit
उपकरण/GitHubGitHub/tomnomnom/gf
सामान्य उपयोगिताएँटोहीकोड विश्लेषणजानकारी एकत्र करनासीक्रेट डिटेक्शन
GitHubtomnomnom/gf

gf

grep के चारों ओर एक रैपर, जो आपको चीज़ें grep करने में मदद करता है

रिपॉजिटरी देखें
2.1k3422 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

gf

grep के चारों ओर एक रैपर ताकि सामान्य पैटर्न टाइप करने से बचा जा सके।

क्या? क्यों?

मैं grep का बहुत उपयोग करता हूँ। कोड बेस का ऑडिट करते समय, meg के आउटपुट को देखते समय, या सामान्य रूप से बड़ी मात्रा में डेटा से निपटते समय। मैं अक्सर इस तरह के काफी जटिल पैटर्न का उपयोग करते हुए समाप्त होता हूँ:

root@kitploit:~
▶ grep -HnrE '(\$_(POST|GET|COOKIE|REQUEST|SERVER|FILES)|php://(input|stdin))' *

यह सब टाइप करते समय गड़बड़ करना वाकई आसान है, और यह जानना मुश्किल हो सकता है कि आपको कोई परिणाम नहीं मिले हैं क्योंकि खोजने के लिए कुछ है ही नहीं, या क्योंकि आपने पैटर्न लिखने में गड़बड़ की है या गलत फ्लैग चुने हैं।

मैंने gf को उन पैटर्न और फ्लैग संयोजनों को नाम देने के लिए लिखा है जिनका मैं हर समय उपयोग करता हूँ। इसलिए उपरोक्त कमांड बस बन जाती है:

root@kitploit:~
▶ gf php-sources

पैटर्न फ़ाइलें

पैटर्न परिभाषाएँ ~/.gf में छोटी JSON फ़ाइलों के रूप में संग्रहीत की जाती हैं जिन्हें वर्शन कंट्रोल के अंतर्गत रखा जा सकता है:

root@kitploit:~
▶ cat ~/.gf/php-sources.json
{
    "flags": "-HnrE",
    "pattern": "(\\$_(POST|GET|COOKIE|REQUEST|SERVER|FILES)|php://(input|stdin))"
}

पैटर्न की लंबाई और जटिलता को थोड़ा कम करने में मदद के लिए, आप कई पैटर्न की सूची भी निर्दिष्ट कर सकते हैं:

root@kitploit:~
▶ cat ~/.gf/php-sources-multiple.json
{
    "flags": "-HnrE",
    "patterns": [
        "\\$_(POST|GET|COOKIE|REQUEST|SERVER|FILES)",
        "php://(input|stdin)"
    ]
}

examples निर्देशिका में कुछ और उदाहरण पैटर्न फ़ाइलें हैं।

आप कमांड लाइन से पैटर्न फ़ाइलें बनाने के लिए -save फ्लैग का उपयोग कर सकते हैं:

root@kitploit:~
▶ gf -save php-serialized -HnrE '(a:[0-9]+:{|O:[0-9]+:"|s:[0-9]+:")'

ऑटो कम्पलीट

एक ऑटो-कम्पलीट स्क्रिप्ट शामिल है, ताकि आप यह देखने के लिए 'tab' दबा सकें कि आपके विकल्प क्या हैं:

root@kitploit:~
▶ gf <tab>
base64       debug-pages  fw           php-curl     php-errors   php-sinks    php-sources  sec          takeovers    urls

Bash

ऑटो-कम्पलीट काम करवाने के लिए आपको अपने .bashrc या ऐसी ही फ़ाइल में gf-completion.bash फ़ाइल को source करना होगा:

root@kitploit:~
source ~/path/to/gf-completion.bash

Zsh

ऑटो-कम्पलीट काम करवाने के लिए आपको autoload -U compaudit && compinit का उपयोग करके ऑटोकम्पलीट सक्षम करना होगा (यदि आपके पास oh-my-zsh है तो इसकी आवश्यकता नहीं है) या इसे .zshrc में डालना होगा।

फिर अपने .zshrc या ऐसी ही फ़ाइल में gf-completion.zsh फ़ाइल को source करें:

root@kitploit:~
source ~/path/to/gf-completion.zsh

नोट: यदि आप oh-my-zsh या ऐसा ही कुछ उपयोग कर रहे हैं तो आप पा सकते हैं कि gf git fetch के लिए एक alias है। आप या तो gf बाइनरी को किसी और चीज़ का alias बना सकते हैं, या git fetch alias को हटाने के लिए unalias gf चला सकते हैं।

कस्टम इंजन का उपयोग करना

बाज़ार में कुछ अद्भुत कोड खोज इंजन हैं जो grep के बेहतर विकल्प हो सकते हैं। एक अच्छा उदाहरण the silver searcher है। यह तेज़ है (जैसे बहुत तेज़) और परिणामों को अधिक दृश्य रूप से सुपाच्य तरीके से प्रस्तुत करता है। किसी भिन्न इंजन का उपयोग करने के लिए, प्रासंगिक पैटर्न फ़ाइल में engine: <other tool> जोड़ें:

root@kitploit:~
# Using the silver searcher instead of grep for the aws-keys pattern:
# 1. Adding "ag" engine
# 2. Removing the E flag which is irrelevant for ag
{
  "engine": "ag",
  "flags": "-Hanr",
  "pattern": "([^A-Z0-9]|^)(AKIA|A3T|AGPA|AIDA|AROA|AIPA|ANPA|ANVA|ASIA)[A-Z0-9]{12,}"
}
  • नोट: विभिन्न इंजन विभिन्न फ्लैग का उपयोग करते हैं, इसलिए उपरोक्त उदाहरण में, ag को सफलतापूर्वक चलाने के लिए aws-keys.json फ़ाइल से फ्लैग E को हटाना होगा।

इंस्टॉल करें

यदि आपके पास Go इंस्टॉल और कॉन्फ़िगर है तो आप gf को इसके साथ इंस्टॉल कर सकते हैं:

root@kitploit:~
▶ go get -u github.com/tomnomnom/gf

यदि आपने go get का उपयोग करके इंस्टॉल किया है, तो आप इस तरह अपने .bashrc में ऑटो-कम्पलीट सक्षम कर सकते हैं:

root@kitploit:~
▶ echo 'source $GOPATH/src/github.com/tomnomnom/gf/gf-completion.bash' >> ~/.bashrc

ध्यान दें कि परिवर्तनों को प्रभावी करने के लिए आपको अपना टर्मिनल पुनः आरंभ करना होगा, या source ~/.bashrc चलाना होगा।

जल्दी शुरू करने के लिए, आप उदाहरण पैटर्न फ़ाइलों को इस तरह ~/.gf में कॉपी कर सकते हैं:

root@kitploit:~
▶ cp -r $GOPATH/src/github.com/tomnomnom/gf/examples ~/.gf

मेरे व्यक्तिगत पैटर्न जिन्हें मैंने उदाहरण के रूप में शामिल किया है, आपके लिए बहुत उपयोगी नहीं हो सकते हैं, लेकिन उम्मीद है कि वे अभी भी संदर्भ का एक उचित बिंदु हैं।

योगदान

वास्तव में मुझे नई पैटर्न फ़ाइलों में सबसे अधिक रुचि होगी! यदि आपके पास कुछ ऐसा है जिसे आप नियमित रूप से grep करते हैं, तो बेझिझक examples निर्देशिका में नई पैटर्न फ़ाइलें जोड़ने के लिए PR जारी करें।

बग फिक्स का भी हमेशा स्वागत है :)

टूल डाउनलोड करें