{"id":13549633,"url":"https://github.com/dwmkerr/effective-shell","last_synced_at":"2026-02-23T22:56:53.391Z","repository":{"id":37663339,"uuid":"93947162","full_name":"dwmkerr/effective-shell","owner":"dwmkerr","description":"Text, samples and website for my 'Effective Shell' series.","archived":false,"fork":false,"pushed_at":"2026-01-06T17:08:56.000Z","size":808144,"stargazers_count":755,"open_issues_count":18,"forks_count":89,"subscribers_count":14,"default_branch":"main","last_synced_at":"2026-01-09T09:34:26.089Z","etag":null,"topics":["bash","coding","devops","effective-shell","hacking","linux","programming","shell","terminal"],"latest_commit_sha":null,"homepage":"https://effective-shell.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dwmkerr.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/contributing.md","funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"dwmkerr"}},"created_at":"2017-06-10T15:11:58.000Z","updated_at":"2026-01-08T20:38:10.000Z","dependencies_parsed_at":"2023-02-17T01:01:36.079Z","dependency_job_id":"92b0957e-9c2d-4c83-8e7b-2601b5d70137","html_url":"https://github.com/dwmkerr/effective-shell","commit_stats":{"total_commits":521,"total_committers":32,"mean_commits":16.28125,"dds":0.3339731285988484,"last_synced_commit":"c87eed82d1de228189b31c70b712618d483e4207"},"previous_names":[],"tags_count":115,"template":false,"template_full_name":null,"purl":"pkg:github/dwmkerr/effective-shell","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwmkerr%2Feffective-shell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwmkerr%2Feffective-shell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwmkerr%2Feffective-shell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwmkerr%2Feffective-shell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dwmkerr","download_url":"https://codeload.github.com/dwmkerr/effective-shell/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwmkerr%2Feffective-shell/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28477633,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T03:13:13.607Z","status":"ssl_error","status_checked_at":"2026-01-16T03:11:47.863Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","coding","devops","effective-shell","hacking","linux","programming","shell","terminal"],"created_at":"2024-08-01T12:01:23.840Z","updated_at":"2026-02-23T22:56:53.384Z","avatar_url":"https://github.com/dwmkerr.png","language":"JavaScript","readme":"# effective-shell \n\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-23-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n\n[![Release Please](https://github.com/dwmkerr/effective-shell/actions/workflows/release-please.yaml/badge.svg)](https://github.com/dwmkerr/effective-shell/actions/workflows/release-please.yaml) ![Version Badge](https://img.shields.io/github/v/tag/dwmkerr/effective-shell?label=version) [![Creative Commons BY-NC-SA](https://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png)](http://creativecommons.org/licenses/by-nc-sa/3.0/)\n\nText, samples and references for my 'Effective Shell' series. This website is hosted at [effective-shell.com](https://effective-shell.com).\n\nIf you find this book useful, please do consider [sponsoring me](https://github.com/sponsors/dwmkerr) to help support my open-source work!\n\n\u003c!-- vim-markdown-toc GFM --\u003e\n\n* [Introduction](#introduction)\n* [Installing the Samples](#installing-the-samples)\n* [The Website](#the-website)\n    * [Building the Website](#building-the-website)\n* [Custom Components](#custom-components)\n* [Versioning](#versioning)\n* [Contributing](#contributing)\n* [Copyright \u0026 Licensing](#copyright--licensing)\n* [ASCII Terminal Recordings](#ascii-terminal-recordings)\n* [Thanks!](#thanks)\n* [Contributors ✨](#contributors-)\n\n\u003c!-- vim-markdown-toc --\u003e\n\n## Introduction\n\nThis repository contains all of the content for the [Effective Shell](https://effective-shell.com/) online book.\n\n## Installing the Samples\n\nYou can install the samples into your `~/effective-shell` folder with this command:\n\n```sh\ncurl effective.sh | sh\n```\n\nOr can also manually download them using from any of these locations:\n\n- [https://effective-shell.com/downloads/effective-shell-samples.zip](https://effective-shell.com/downloads/effective-shell-samples.zip)\n- [https://effective-shell.com/downloads/effective-shell-samples.tar.gz](https://effective-shell.com/downloads/effective-shell-samples.tar.gz)\n\nThe one-line shell installer is hosted at [github.com/dwmkerr/effective-shell-installer](https://github.com/dwmkerr/effective-shell-installer)\n\n## The Website\n\nThe content in this repository is built into a static site available at [effective-shell.com](https://effective-shell.com). This site is generated using [Docusaurus](https://docusaurus.io).\n\nThis section contains information on how to built, use and edit the site. To help you quickly edit the site, some tips are below:\n\n- The book content is at [./docs/](./docs/)\n- The menu structure is defined at [sidebars.js](sidebars.js).\n\n### Building the Website\n\nTo setup dependencies, run:\n\n```bash\nmake setup\n```\n\nTo test that TypeScript types compile, run:\n\n```bash\nmake typescript-check\n```\n\nTo serve the site locally, run:\n\n```bash\nmake serve\n```\n\nTo build the site, run:\n\n```bash\nmake build\n```\n\nThe built site is generated at `./build`.\n\nNote that the [`samples`](./samples) folder is automatically zipped up and added to the website, meaning it can be downloaded directly from:\n\n```\nhttps://effective-shell.com/downloads/effective-shell-samples.zip\nhttps://effective-shell.com/downloads/effective-shell-samples.tar.gz\n```\n\n## Custom Components\n\nCustom Components to support styling are available at:\n\n```\nsrc/components\n```\n\nThere is a live view that can be used to preview each component:\n\nhttp://localhost:3745/zz-developer-guide/components\n\n(Port 3745 = \"ESHL\" on a phone dialpad)\n\nComponents can be added to global scope, i.e. available in call pages, by adding to the `MDXComponents.js` swizzled file:\n\n```\nsrc/theme/MDXComponents.js\n```\n\n## Versioning\n\nThe version of the site and the code is defined in the [`package.json`](./package.json) file.\n\nReleasing in managed via [Release Please](https://github.com/googleapis/release-please) in the [`release-please.yaml`](./.github/workflows/release-please.yaml) workflow file.\n\nIf you need to manually trigger a release, run:\n\n```bash\ngit commit --allow-empty -m \"chore: release 2.0.0\" -m \"Release-As: 2.0.0\"\n```\n\n## Contributing\n\nPlease carefully read the [Contributing Guide](./.github/contributing.md) before working on changes.\n\n## Copyright \u0026 Licensing\n\nAll content is Copyright (©) Dave Kerr. Please get in touch by opening an issue if you have questions on copyright or licensing.\n\n[![Creative Commons BY-NC-SA](https://i.creativecommons.org/l/by-nc-sa/3.0/88x31.png)](http://creativecommons.org/licenses/by-nc-sa/3.0/)\n\nThis work is licensed under a [Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License](http://creativecommons.org/licenses/by-nc-sa/3.0/).\n\n## ASCII Terminal Recordings\n\nAll terminal recordings used in this project are built using the superb '[asciinema](https://asciinema.org/)' tool. Many thanks to Marcin Kulik for building such an excellent piece of software.\n\n## Thanks!\n\nThanks to the following people who have helped with reviews, comments, suggestions.\n\n- Andrew Bestbier, Thomas Neumann, Tam Nguyen, Rahul Maliakkal, Peter Mondlock, Samantha Baldwin, Niklas Schmuecker for the proofing, comments and suggestions\n- [Ogus Ismail](https://stackoverflow.com/users/10248678/oguz-ismail) for helping me understand some of the [nuances of word splitting and filename expansion](https://stackoverflow.com/questions/67648392/how-can-i-confirm-whether-whitespace-or-special-characters-are-escaped-in-a-wild)\n- [Josh Timmons](https://github.com/josh-59) for proof-reading and suggesting structural improvements as well as grammar and spelling fixes\n- [Joel Schwarzmann](https://github.com/datajoely) for proofing and adding content on the Python code in the 'How to avoid shell scripting' chapter\n- [Xiaoyou \"Elsie\" Jiang](https://github.com/xiaoyou-elsie-jiang) for proof-reading and improvements to Chapter 30\n\n## Contributors ✨\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/xiaoyou-elsie-jiang\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/101381124?v=4?s=100\" width=\"100px;\" alt=\"Xiaoyou \"Elsie\" Jiang\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eXiaoyou \"Elsie\" Jiang\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=xiaoyou-elsie-jiang\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Axiaoyou-elsie-jiang\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://linkedin.com/in/tbueschel\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/13087421?v=4?s=100\" width=\"100px;\" alt=\"Tobias Büschel\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eTobias Büschel\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Atobiasbueschel\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://foostack.ai\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/15166953?v=4?s=100\" width=\"100px;\" alt=\"Doug Foo\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDoug Foo\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=dougfoo\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Adougfoo\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/skokaina\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/2756985?v=4?s=100\" width=\"100px;\" alt=\"Sallah Kokaina\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSallah Kokaina\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=skokaina\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Askokaina\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://www.fetch-template.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/26925206?v=4?s=100\" width=\"100px;\" alt=\"samhinton88\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003esamhinton88\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=samhinton88\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Asamhinton88\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://www.alexvinall.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/5629393?v=4?s=100\" width=\"100px;\" alt=\"Alex Vinall\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAlex Vinall\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=alexvinall\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Aalexvinall\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/JosephFKnight\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/45918817?v=4?s=100\" width=\"100px;\" alt=\"Joseph Knight\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJoseph Knight\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=JosephFKnight\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3AJosephFKnight\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://bit.ly/doug-todd\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/53582591?v=4?s=100\" width=\"100px;\" alt=\"Doug Todd\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDoug Todd\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=Zambrella\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3AZambrella\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/jdhzzz\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1476690?v=4?s=100\" width=\"100px;\" alt=\"jdhzzz\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ejdhzzz\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=jdhzzz\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Ajdhzzz\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/valankar\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/31250800?v=4?s=100\" width=\"100px;\" alt=\"valankar\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003evalankar\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=valankar\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Avalankar\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/Denpeer\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/5969147?v=4?s=100\" width=\"100px;\" alt=\"Denpeer\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDenpeer\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3ADenpeer\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=Denpeer\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/mbogatzki\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/39946827?v=4?s=100\" width=\"100px;\" alt=\"Marek Bogatzki\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMarek Bogatzki\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=mbogatzki\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Ambogatzki\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/MichaelWarnecke\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/7615963?v=4?s=100\" width=\"100px;\" alt=\"MWarnecke\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMWarnecke\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=MichaelWarnecke\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3AMichaelWarnecke\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/issues?q=author%3AMichaelWarnecke\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://taxodium.ink/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/30440218?v=4?s=100\" width=\"100px;\" alt=\"Spike\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSpike\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3ASpike-Leung\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/issues?q=author%3ASpike-Leung\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://nosarthur.github.io/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1400272?v=4?s=100\" width=\"100px;\" alt=\"Dong Zhou\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDong Zhou\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Anosarthur\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/issues?q=author%3Anosarthur\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=nosarthur\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/drormaman\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/7041612?v=4?s=100\" width=\"100px;\" alt=\"Dror Maman\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDror Maman\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/issues?q=author%3Adrormaman\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=drormaman\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Adrormaman\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/saraid\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/40923?v=4?s=100\" width=\"100px;\" alt=\"Michael Chui\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMichael Chui\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Asaraid\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/nimid\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/4145121?v=4?s=100\" width=\"100px;\" alt=\"Saroj Sangphongamphai\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSaroj Sangphongamphai\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Animid\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/linjielig\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/11633940?v=4?s=100\" width=\"100px;\" alt=\"Lee Li\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eLee Li\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Alinjielig\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/issues?q=author%3Alinjielig\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=linjielig\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/leeli0\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/11633940?v=4?s=100\" width=\"100px;\" alt=\"Lee Li\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eLee Li\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/issues?q=author%3Aleeli0\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://stratus3d.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1520926?v=4?s=100\" width=\"100px;\" alt=\"Trevor Brown\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eTrevor Brown\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/issues?q=author%3AStratus3D\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3AStratus3D\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://twitter.com/pfrischmuth\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/351542?v=4?s=100\" width=\"100px;\" alt=\"Philipp Frischmuth\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePhilipp Frischmuth\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/pulls?q=is%3Apr+reviewed-by%3Apfrischmuth\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/illicitonion\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1131704?v=4?s=100\" width=\"100px;\" alt=\"Daniel Wagner-Hall\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDaniel Wagner-Hall\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/dwmkerr/effective-shell/commits?author=illicitonion\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n","funding_links":["https://github.com/sponsors/dwmkerr"],"categories":["JavaScript","bash"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdwmkerr%2Feffective-shell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdwmkerr%2Feffective-shell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdwmkerr%2Feffective-shell/lists"}