bash-hackers-wiki/search/search_index.json

1 line
824 KiB
JSON
Raw Permalink Normal View History

{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"The Bash Hackers Wiki","text":"<p>Under construction</p> <p>This is an archive of the old wiki.bash-hackers.org with the goal of preserving and improving the content by the community in a modern way and format.</p> <p>The most recent version of each page that had content was automatically converted to Markdown and can be found here. Pandoc did its best, but there is still some work to do as not all pages are formatted correctly. So for everyone who is interested in helping out, feel free to open PRs. Any help is welcome.</p> <p>This wiki is intended to hold documentation of any kind about GNU Bash. The main motivation was to provide human-readable documentation and information so users aren't forced to read every bit of the Bash manpage - which can be difficult to understand. However, the docs here are not meant as a newbie tutorial.</p> <p>This wiki and any programs found in this wiki are free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</p> <p>This wiki and its programs are distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.</p> <p>You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.</p> <p>Stranger! Feel free to comment or edit the contents on GitHub. Use GitHub Issues to submit bugs and GitHub Discussions for enhancements, requests and general feedback/discussion.</p>","tags":["bash","shell","linux","scripting"]},{"location":"#scripting-and-general-information","title":"Scripting and general information","text":"<ul> <li>Bash v4 - a rough overview (unmaintained, since Bash 4 is more or less standard.md)</li> <li>style \u2013 an assorted collection of style and optic hints</li> <li>basics</li> <li>newbie_traps</li> <li>bashbehaviour</li> <li>posparams</li> <li>processtree</li> <li>obsolete</li> <li>nonportable</li> <li>debuggingtips</li> <li>terminalcodes</li> </ul>","tags":["bash","shell","linux","scripting"]},{"location":"#code-snippets","title":"Code snippets","text":"<p>There is a section that holds small code snippets.</p> <p>See also some Bash source code excerpts.</p>","tags":["bash","shell","linux","scripting"]},{"location":"#how-to","title":"How to","text":"<p>Doing specific tasks: concepts, methods, ideas:</p> <ul> <li>Simple locking (against parallel run.md)</li> <li>Rudimentary config files for your scripts</li> <li>Editing files with ed</li> <li>Collapsing Functions</li> <li>Illustrated Redirection Tutorial</li> <li>Calculate with dc</li> <li>Introduction to pax - the POSIX archiver</li> <li>getopts_tutorial (under construction!)</li> <li>dissectabadoneliner An example of a bad oneliner, breakdown and fix (by <code>kojoro</code>)</li> <li>Write tests for ./your-script.sh by using bashtest util</li> </ul>","tags":["bash","shell","linux","scripting"]},{"location":"#bash-syntax-and-operations","title":"Bash syntax and operations","text":"<ul> <li>Bash features overview by version</li> <li>Basic grammar rules</li> <li>Quoting and character escaping</li> <li>Parsing and execution</li> <li>Some words about words...</li> <li>Patterns and pattern matching</li> <li>Arithmetic expressions</li> <li>List of shell options</li> <li>Redirection</li> <li>Special parameters and shell variables</li> <li>Arrays</li> </ul>","tags":["bash","shell","linux","scripting"]},{"location":"#compound-commands","title":"Compound commands","text":"Compound commands overview Grouping <code>{ ...; }</code> command grouping <code>( ... .md)</code> command grouping in a subshell Conditionals <code>[[ ... ]]</code> conditional expression <code>if ...; then ...; fi</code> conditional branching <code>case ... esac</code>