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>