start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
start [2015/11/14 06:38]
thebonsai link kill command
start [2019/08/22 13:56]
murugan [Builtin Commands]
Line 2: Line 2:
 ~~DISCUSSION:​off~~ ~~DISCUSSION:​off~~
  
-====== Bash Hackers Wiki Front page ======+====== ​The Bash Hackers Wiki ======
  
 {{keywords>​bash shell linux scripting}} {{keywords>​bash shell linux scripting}}
  
 <WRAP center round box 90%> <WRAP center round box 90%>
-//**__The Bash-Hackers Wiki__**// 
 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. 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.
 +
 +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.
 +
 +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.
 +
 +You should have received a copy of the GNU General Public License along with this program. ​ If not, see <​http://​www.gnu.org/​licenses/>​.
  
 [[wishes | What would YOU like to see here?]] (outdated and locked, please use the discussions) [[wishes | What would YOU like to see here?]] (outdated and locked, please use the discussions)
  
-**Stranger!** [[http://​wiki.bash-hackers.org/​start&​do=register | Feel free to register]] and edit the contents. There is a [[meta:​need_love|Bash Hackers Wiki needs love page]] that lists some things to do. The registration is only there to prevent SPAM.+**Stranger!** [[http://​wiki.bash-hackers.org/​start&​do=register | Feel free to register]] and comment or edit the contents. There is a [[meta:​need_love|Bash Hackers Wiki needs love page]] that lists some things to do. The registration is only there to prevent SPAM.
 </​WRAP>​ </​WRAP>​
  
Line 49: Line 54:
   * [[howto:​getopts_tutorial]] (//under construction!//​)   * [[howto:​getopts_tutorial]] (//under construction!//​)
   * [[howto:​dissectabadoneliner]] An example of a bad oneliner, breakdown and fix (by ''​kojoro''​)   * [[howto:​dissectabadoneliner]] An example of a bad oneliner, breakdown and fix (by ''​kojoro''​)
 +  * [[howto:​testing-your-scripts | Write tests for ./​your-script.sh]] by using bashtest util 
  
  
Line 106: Line 112:
  
 <WRAP column 46%> <WRAP column 46%>
-^  Declaration commands\\ <wrap lo>​Commands that set and query attributes/​types,​ and manipulate simple datastructures.</​wrap> ​ ^^  Alt  ^  Type  ^+^  Declaration commands\\ <​wrap ​center round lo todo box 80%>​Commands that set and query attributes/​types,​ and manipulate simple datastructures.</​wrap> ​ ^^  Alt  ^  Type  ^
 |[[commands:​builtin:​declare | declare]]|Display or set shell variables or functions along with attributes.| ​ ''​typeset'' ​ |  builtin ​ | |[[commands:​builtin:​declare | declare]]|Display or set shell variables or functions along with attributes.| ​ ''​typeset'' ​ |  builtin ​ |
 |[[commands:​builtin:​export | export]]|Display or set shell variables, also giving them the export attribute.| ​ ''​typeset -x'' ​ |  special builtin ​ | |[[commands:​builtin:​export | export]]|Display or set shell variables, also giving them the export attribute.| ​ ''​typeset -x'' ​ |  special builtin ​ |
Line 114: Line 120:
 |[[commands:​builtin:​unset | unset]]|Unset variables and functions.| ​ -  |  special builtin ​ | |[[commands:​builtin:​unset | unset]]|Unset variables and functions.| ​ -  |  special builtin ​ |
 |[[commands:​builtin:​shift | shift]]|Shift positional parameters| ​ -  |  special builtin ​ | |[[commands:​builtin:​shift | shift]]|Shift positional parameters| ​ -  |  special builtin ​ |
-^  I/O\\ <wrap lo>​Commands for reading/​parsing input, or producing/​formatting output of standard streams.</​wrap> ​ ^^  Alt  ^  Type  ^ +^  I/O\\ <​wrap ​center round lo todo box 80%>​Commands for reading/​parsing input, or producing/​formatting output of standard streams.</​wrap> ​ ^^  Alt  ^  Type  ^ 
-|[[syntax:​keywords:​coproc | coproc]]|Co-processes:​ Run a compound ​command in the background with async I/O.|  -  |  keyword ​ |+|[[syntax:​keywords:​coproc | coproc]]|Co-processes:​ Run a command in the background with pipes for reading ​writing its standard streams.|  -  |  keyword ​ |
 |[[commands:​builtin:​echo | echo]]|Create output from arguments.| ​ -  |  builtin ​ | |[[commands:​builtin:​echo | echo]]|Create output from arguments.| ​ -  |  builtin ​ |
 |[[commands:​builtin:​mapfile | mapfile]]|Read lines of input into an array.| ​ ''​readarray'' ​ |  builtin ​ | |[[commands:​builtin:​mapfile | mapfile]]|Read lines of input into an array.| ​ ''​readarray'' ​ |  builtin ​ |
 |[[commands:​builtin:​printf | printf]]|"​advanced ''​echo''​."​| ​ -  |  builtin ​ | |[[commands:​builtin:​printf | printf]]|"​advanced ''​echo''​."​| ​ -  |  builtin ​ |
 |[[commands:​builtin:​read | read]]|Read input into variables or arrays, or split strings into fields using delimiters.| ​ -  |  builtin ​ | |[[commands:​builtin:​read | read]]|Read input into variables or arrays, or split strings into fields using delimiters.| ​ -  |  builtin ​ |
-^  Configuration and Debugging\\ <wrap lo>​Commands that modify shell behavior, change special options, assist in debugging.</​wrap> ​ ^^  Alt  ^  Type  ^+^  Configuration and Debugging\\ <​wrap ​center round lo todo box 80%>​Commands that modify shell behavior, change special options, assist in debugging.</​wrap> ​ ^^  Alt  ^  Type  ^
 |[[commands:​builtin:​caller | caller]]|Identify/​print execution frames.| ​ -  |  builtin ​ | |[[commands:​builtin:​caller | caller]]|Identify/​print execution frames.| ​ -  |  builtin ​ |
 |[[commands:​builtin:​set | set]]|Set the positional parameters and/or set options that affect shell behaviour.| ​ -  |  special builtin ​ | |[[commands:​builtin:​set | set]]|Set the positional parameters and/or set options that affect shell behaviour.| ​ -  |  special builtin ​ |
Line 138: Line 144:
 | [[commands:​builtin:​exec| exec]] ​                                                                                                         | Replace the current shell process or set redirections. ​ |  -       ​| ​ special builtin ​ | | [[commands:​builtin:​exec| exec]] ​                                                                                                         | Replace the current shell process or set redirections. ​ |  -       ​| ​ special builtin ​ |
 | [[commands:​builtin:​exit| exit]] ​                                                                                                         | Exit the shell. ​                                        ​| ​ -       ​| ​ special builtin ​ | | [[commands:​builtin:​exit| exit]] ​                                                                                                         | Exit the shell. ​                                        ​| ​ -       ​| ​ special builtin ​ |
-| [[commands:​builtin:​kill| kill]] ​                                                                                                         | Send a signal to specified process(es) ​                 |                            ​|+| [[commands:​builtin:​kill| kill]] ​                                                                                                         | Send a signal to specified process(es) ​                 |  ​- ​      builtin ​          |
 | [[commands:​builtin:​trap| trap]] ​                                                                                                         | Set signal handlers or output the current handlers. ​    ​| ​ -       ​| ​ special builtin ​ | | [[commands:​builtin:​trap| trap]] ​                                                                                                         | Set signal handlers or output the current handlers. ​    ​| ​ -       ​| ​ special builtin ​ |
 | [[commands:​builtin:​times| times]] ​                                                                                                       | Display process times. ​                                 |  -       ​| ​ special builtin ​ | | [[commands:​builtin:​times| times]] ​                                                                                                       | Display process times. ​                                 |  -       ​| ​ special builtin ​ |
Line 198: Line 204:
   * [[http://​www.opengroup.org/​austin/​ | The Austin Group]] - [[ http://​dir.gmane.org/​gmane.comp.standards.posix.austin.general | List archives ]], [[ http://​austingroupbugs.net/​main_page.php | Bug tracker ]]   * [[http://​www.opengroup.org/​austin/​ | The Austin Group]] - [[ http://​dir.gmane.org/​gmane.comp.standards.posix.austin.general | List archives ]], [[ http://​austingroupbugs.net/​main_page.php | Bug tracker ]]
   * [[http://​cfajohnson.com/​shell/​cus-faq.html | comp.unix.shell FAQ]]   * [[http://​cfajohnson.com/​shell/​cus-faq.html | comp.unix.shell FAQ]]
 +
  
 === Documentation / Reference === === Documentation / Reference ===
Line 215: Line 222:
   * [[http://​www.computerworld.com.au/​article/​279011/​a-z_programming_languages_sh | Interview with Steve Bourne]] • [[https://​www.youtube.com/​watch?​v=2kEJoWfobpA | Stephen Bourne - BSDCan 2015 keynote]]   * [[http://​www.computerworld.com.au/​article/​279011/​a-z_programming_languages_sh | Interview with Steve Bourne]] • [[https://​www.youtube.com/​watch?​v=2kEJoWfobpA | Stephen Bourne - BSDCan 2015 keynote]]
   * [[http://​news.slashdot.org/​story/​01/​02/​06/​2030205/​david-korn-tells-all | Interview with David Korn]]   * [[http://​news.slashdot.org/​story/​01/​02/​06/​2030205/​david-korn-tells-all | Interview with David Korn]]
 +  * [[https://​www.youtube.com/​watch?​v=bKzonnwoR2I | Kernighan on the Unix pipeline (computerphile video)]]
   * Linux in general, with some shell related stuff: [[http://​www.cyberciti.biz/​ | nixCraft: Linux Tips, Hacks, Tutorials and Ideas]]   * Linux in general, with some shell related stuff: [[http://​www.cyberciti.biz/​ | nixCraft: Linux Tips, Hacks, Tutorials and Ideas]]
 +  * Linux tutorials, guides and how-tos: [[https://​www.rosehosting.com/​blog/​ | RoseHosting Blog]], [[https://​www.rosehosting.com/​blog/​script-install-wordpress-on-a-debianubuntu-vps/​ | bash script for installing WordPress]] and some [[https://​www.rosehosting.com/​blog/​basic-shell-commands-after-putty-ssh-logon/​ | basic shell commands]]
   * [[misc:​bashphorisms | Bashphorism list from the Bash IRC channel on Freenode]]   * [[misc:​bashphorisms | Bashphorism list from the Bash IRC channel on Freenode]]
   * [[misc:​shell_humor | Some more or less funny commandline stuff]]   * [[misc:​shell_humor | Some more or less funny commandline stuff]]
 +  * [[https://​thishosting.rocks/​how-to-enable-ssh-on-ubuntu/​ | How to Enable SSH on Ubuntu Tutorial]]
 ==== Bash Libraries (needs review) ==== ==== Bash Libraries (needs review) ====
  
Line 249: Line 258:
 Visit us in ''​irc.freenode.net'',​ channel ''#​bash''​ ;-) Visit us in ''​irc.freenode.net'',​ channel ''#​bash''​ ;-)
  
-If you have critiques or suggestions,​ please feel free to send a mail using the contact form on the right. ​<​del>​If you have quick suggestions,​ you can also use the [[wishes]] (editable by everyone!).</​del> ​Note that there is a discussion ​platform ​below every article ​page.+If you have critiques or suggestions,​ please feel free to send a mail using the contact form on the right. Note that there is a simple ​discussion ​option ​below every article.
  
 Please also see the [[user:​thebonsai:​imprint | imprint]] if you have problems with the site and its contents (legality, ...)! Please also see the [[user:​thebonsai:​imprint | imprint]] if you have problems with the site and its contents (legality, ...)!
  • start.txt
  • Last modified: 2020/11/10 14:26
  • by gimolai