/ html / resources / bash-tools / search-string / search-string.html
search-string.html
  1  <!DOCTYPE html>
  2  <html lang="de">
  3     <head>
  4        <meta charset="UTF-8" />
  5        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  6        <meta http-equiv="onion-location" content="http://bopbopl6lohkl2rts3ltesjnag4hzs4jrx2h6k6etgq5xasbpqekzlqd.onion" />
  7        <title>BOP Resources: search-string.sh</title>
  8        <link rel="stylesheet" href="/assets/stylesheet.css" />
  9        <link rel="icon" type="image/x-icon" href="/assets/img/favicon.png">
 10     </head>
 11     <body>
 12         <header>
 13            <!-- --------------------------------------------------------------------------------------------------------------------------------- -->
 14            <script src="/assets/js/navbar-OpenClose.js"></script>
 15            <script src="/assets/js/lightbox.js"></script>
 16            <script src="/assets/js/copyCodeButton.js"></script>
 17            <link rel="stylesheet" href="/resources/js-libraries/highlightJS/atom-one-dark.min.css">
 18            <script src="/resources/js-libraries/highlightJS/highlight.min.js"></script>
 19            <script src="/resources/js-libraries/highlightJS/highlightjs-line-numbers.min.js"></script>
 20            <script>hljs.highlightAll();</script>
 21            <script>hljs.initLineNumbersOnLoad();</script>
 22            <!-- --------------------------------------------------------------------------------------------------------------------------------- -->
 23            <div class="branding">
 24               <button class="toggle-btn-navbar" id="navbarOpenButton">☰</button>
 25               <a href="/">
 26               <img class="logo" src="/assets/img/logo.png">
 27               </a>
 28               <div class="typing-animation">BytesOfProgress</div>
 29            </div>
 30         </header>
 31         <div id="navbarContainer" class="navbar-container">
 32            <iframe class="navbar-iframe" src="/assets/navbar/navbar.html" frameBorder= "0"></iframe>
 33         </div>
 34        <main>
 35  <!-- --------------------------------------------------------------------------------------------------------------------------------- -->
 36  
 37  <article class="site-post">
 38     <header class="post-header">
 39        <h1 class="post-title">search-string.sh</h1>
 40        <div class="post-meta">
 41        </div>
 42     </header>
 43  </article>
 44  
 45  <nav class="breadcrumb">
 46    <a href="/">Home</a>
 47    <span class="divider">›</span>
 48    <a href="/resources/">Resources</a>
 49    <span class="divider">›</span>
 50    <a href="/resources/bash-tools/bash-tools.html">BASH-Tools</a>
 51    <span class="divider">›</span>
 52    <span class="current">search-string.sh</span>
 53  </nav>
 54  
 55  <section class="post-content">
 56  
 57  <!-- --------------------------------------------------------------------------------------------------------------------------------- -->
 58  
 59  
 60  <p>
 61    This script will recursively search files in a directory for a pre-defined string.
 62  </p>
 63  
 64  <p>
 65    Usage: $ bash search-string.sh "KEYWORD" /path/to/directory
 66  </p>
 67  
 68  <p>
 69    Get file:
 70  </p>
 71  
 72  <blockquote>
 73    $ wget https://bytesofprogress.net/resources/bash-tools/search-string/search-string.sh
 74  </blockquote>
 75  
 76  <p>
 77    Contents of file:
 78  </p>
 79  
 80  <div class="code-box">
 81    <pre><code>#!/bin/bash
 82  
 83  # This script will recursively search files in a directory for a pre-defined string.
 84  # Usage: $ bash search-string.sh "KEYWORD" /path/to/directory
 85  	# Did the prompt have 2 arguments?
 86  if [ "$#" -ne 2 ]; then
 87    echo "Usage: $0 QUERY PATH_TO_FOLDER"
 88    exit 1
 89  fi
 90  	QUERY="$1"
 91  SEARCHDIR="$2"
 92  	# Check if given path exists and is a directory.
 93  if [ ! -d "$SEARCHDIR" ]; then
 94    echo "Error: '$SEARCHDIR' is not a directory."
 95    exit 1
 96  fi
 97  	# Searching recursively, echo paths.
 98  grep -rl --binary-files=without-match "$QUERY" "$SEARCHDIR"</code></pre>
 99  </div>
100  
101  <br />
102  
103  <!-- --------------------------------------------------------------------------------------------------------------------------------- -->
104  
105     <hr>
106     </section>
107     <footer class="post-footer">
108     <a href="/resources/bash-tools/bash-tools.html" class="cta-button">← Back</a>
109     </footer>
110     </main>
111     </body>
112     </html>