CINXE.COM
Comparison of command shells - Wikipedia
<!DOCTYPE html> <html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available" lang="en" dir="ltr"> <head> <meta charset="UTF-8"> <title>Comparison of command shells - Wikipedia</title> <script>(function(){var className="client-js vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-sticky-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-feature-night-mode-enabled skin-theme-clientpref-day vector-toc-available";var cookie=document.cookie.match(/(?:^|; )enwikimwclientpreferences=([^;]+)/);if(cookie){cookie[1].split('%2C').forEach(function(pref){className=className.replace(new RegExp('(^| )'+pref.replace(/-clientpref-\w+$|[^\w-]+/g,'')+'-clientpref-\\w+( |$)'),'$1'+pref+'$2');});}document.documentElement.className=className;}());RLCONF={"wgBreakFrames":false,"wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy", "wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgRequestId":"a7435d8d-712f-4c54-a013-ba5a5e9063a0","wgCanonicalNamespace":"","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":0,"wgPageName":"Comparison_of_command_shells","wgTitle":"Comparison of command shells","wgCurRevisionId":1246083882,"wgRevisionId":1246083882,"wgArticleId":1515407,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":["CS1 French-language sources (fr)","Articles with short description","Short description is different from Wikidata","Articles needing additional references from August 2011","All articles needing additional references","Wikipedia neutral point of view disputes from October 2013","All Wikipedia neutral point of view disputes","Wikipedia neutral point of view disputes from July 2014","Articles with multiple maintenance issues","Use dmy dates from May 2019", "All articles with unsourced statements","Articles with unsourced statements from December 2021","All articles lacking reliable references","Articles lacking reliable references from April 2015","Articles lacking reliable references from May 2015","Unix shells","Command shells","Software comparisons"],"wgPageViewLanguage":"en","wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgRelevantPageName":"Comparison_of_command_shells","wgRelevantArticleId":1515407,"wgIsProbablyEditable":true,"wgRelevantPageIsProbablyEditable":true,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgNoticeProject":"wikipedia","wgCiteReferencePreviewsActive":false,"wgFlaggedRevsParams":{"tags":{"status":{"levels":1}}},"wgMediaViewerOnClick":true,"wgMediaViewerEnabledByDefault":true,"wgPopupsFlags":0,"wgVisualEditor":{"pageLanguageCode":"en","pageLanguageDir":"ltr","pageVariantFallbacks":"en"},"wgMFDisplayWikibaseDescriptions":{"search":true,"watchlist":true,"tagline":false,"nearby":true}, "wgWMESchemaEditAttemptStepOversample":false,"wgWMEPageLength":90000,"wgRelatedArticlesCompat":[],"wgEditSubmitButtonLabelPublish":true,"wgULSPosition":"interlanguage","wgULSisCompactLinksEnabled":false,"wgVector2022LanguageInHeader":true,"wgULSisLanguageSelectorEmpty":false,"wgWikibaseItemId":"Q4438323","wgCheckUserClientHintsHeadersJsApi":["brands","architecture","bitness","fullVersionList","mobile","model","platform","platformVersion"],"GEHomepageSuggestedEditsEnableTopics":true,"wgGETopicsMatchModeEnabled":false,"wgGEStructuredTaskRejectionReasonTextInputEnabled":false,"wgGELevelingUpEnabledForUser":false};RLSTATE={"ext.globalCssJs.user.styles":"ready","site.styles":"ready","user.styles":"ready","ext.globalCssJs.user":"ready","user":"ready","user.options":"loading","ext.cite.styles":"ready","ext.pygments":"ready","skins.vector.search.codex.styles":"ready","skins.vector.styles":"ready","skins.vector.icons":"ready","jquery.tablesorter.styles":"ready","jquery.makeCollapsible.styles": "ready","ext.wikimediamessages.styles":"ready","ext.visualEditor.desktopArticleTarget.noscript":"ready","ext.uls.interlanguage":"ready","wikibase.client.init":"ready","ext.wikimediaBadges":"ready"};RLPAGEMODULES=["ext.cite.ux-enhancements","ext.pygments.view","mediawiki.page.media","site","mediawiki.page.ready","jquery.tablesorter","jquery.makeCollapsible","mediawiki.toc","skins.vector.js","ext.centralNotice.geoIP","ext.centralNotice.startUp","ext.gadget.ReferenceTooltips","ext.gadget.switcher","ext.urlShortener.toolbar","ext.centralauth.centralautologin","mmv.bootstrap","ext.popups","ext.visualEditor.desktopArticleTarget.init","ext.visualEditor.targetLoader","ext.echo.centralauth","ext.eventLogging","ext.wikimediaEvents","ext.navigationTiming","ext.uls.interface","ext.cx.eventlogging.campaigns","ext.cx.uls.quick.actions","wikibase.client.vector-2022","ext.checkUser.clientHints","ext.growthExperiments.SuggestedEditSession","wikibase.sidebar.tracking"];</script> <script>(RLQ=window.RLQ||[]).push(function(){mw.loader.impl(function(){return["user.options@12s5i",function($,jQuery,require,module){mw.user.tokens.set({"patrolToken":"+\\","watchToken":"+\\","csrfToken":"+\\"}); }];});});</script> <link rel="stylesheet" href="/w/load.php?lang=en&modules=ext.cite.styles%7Cext.pygments%2CwikimediaBadges%7Cext.uls.interlanguage%7Cext.visualEditor.desktopArticleTarget.noscript%7Cext.wikimediamessages.styles%7Cjquery.makeCollapsible.styles%7Cjquery.tablesorter.styles%7Cskins.vector.icons%2Cstyles%7Cskins.vector.search.codex.styles%7Cwikibase.client.init&only=styles&skin=vector-2022"> <script async="" src="/w/load.php?lang=en&modules=startup&only=scripts&raw=1&skin=vector-2022"></script> <meta name="ResourceLoaderDynamicStyles" content=""> <link rel="stylesheet" href="/w/load.php?lang=en&modules=site.styles&only=styles&skin=vector-2022"> <meta name="generator" content="MediaWiki 1.44.0-wmf.5"> <meta name="referrer" content="origin"> <meta name="referrer" content="origin-when-cross-origin"> <meta name="robots" content="max-image-preview:standard"> <meta name="format-detection" content="telephone=no"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/e/e7/Bash_screenshot.png"> <meta property="og:image:width" content="1200"> <meta property="og:image:height" content="1633"> <meta property="og:image" content="https://upload.wikimedia.org/wikipedia/commons/e/e7/Bash_screenshot.png"> <meta property="og:image:width" content="800"> <meta property="og:image:height" content="1089"> <meta property="og:image:width" content="640"> <meta property="og:image:height" content="871"> <meta name="viewport" content="width=1120"> <meta property="og:title" content="Comparison of command shells - Wikipedia"> <meta property="og:type" content="website"> <link rel="preconnect" href="//upload.wikimedia.org"> <link rel="alternate" media="only screen and (max-width: 640px)" href="//en.m.wikipedia.org/wiki/Comparison_of_command_shells"> <link rel="alternate" type="application/x-wiki" title="Edit this page" href="/w/index.php?title=Comparison_of_command_shells&action=edit"> <link rel="apple-touch-icon" href="/static/apple-touch/wikipedia.png"> <link rel="icon" href="/static/favicon/wikipedia.ico"> <link rel="search" type="application/opensearchdescription+xml" href="/w/rest.php/v1/search" title="Wikipedia (en)"> <link rel="EditURI" type="application/rsd+xml" href="//en.wikipedia.org/w/api.php?action=rsd"> <link rel="canonical" href="https://en.wikipedia.org/wiki/Comparison_of_command_shells"> <link rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en"> <link rel="alternate" type="application/atom+xml" title="Wikipedia Atom feed" href="/w/index.php?title=Special:RecentChanges&feed=atom"> <link rel="dns-prefetch" href="//meta.wikimedia.org" /> <link rel="dns-prefetch" href="//login.wikimedia.org"> </head> <body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject mw-editable page-Comparison_of_command_shells rootpage-Comparison_of_command_shells skin-vector-2022 action-view"><a class="mw-jump-link" href="#bodyContent">Jump to content</a> <div class="vector-header-container"> <header class="vector-header mw-header"> <div class="vector-header-start"> <nav class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-dropdown" class="vector-dropdown vector-main-menu-dropdown vector-button-flush-left vector-button-flush-right" > <input type="checkbox" id="vector-main-menu-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-main-menu-dropdown" class="vector-dropdown-checkbox " aria-label="Main menu" > <label id="vector-main-menu-dropdown-label" for="vector-main-menu-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-menu mw-ui-icon-wikimedia-menu"></span> <span class="vector-dropdown-label-text">Main menu</span> </label> <div class="vector-dropdown-content"> <div id="vector-main-menu-unpinned-container" class="vector-unpinned-container"> <div id="vector-main-menu" class="vector-main-menu vector-pinnable-element"> <div class="vector-pinnable-header vector-main-menu-pinnable-header vector-pinnable-header-unpinned" data-feature-name="main-menu-pinned" data-pinnable-element-id="vector-main-menu" data-pinned-container-id="vector-main-menu-pinned-container" data-unpinned-container-id="vector-main-menu-unpinned-container" > <div class="vector-pinnable-header-label">Main menu</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-main-menu.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-main-menu.unpin">hide</button> </div> <div id="p-navigation" class="vector-menu mw-portlet mw-portlet-navigation" > <div class="vector-menu-heading"> Navigation </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-mainpage-description" class="mw-list-item"><a href="/wiki/Main_Page" title="Visit the main page [z]" accesskey="z"><span>Main page</span></a></li><li id="n-contents" class="mw-list-item"><a href="/wiki/Wikipedia:Contents" title="Guides to browsing Wikipedia"><span>Contents</span></a></li><li id="n-currentevents" class="mw-list-item"><a href="/wiki/Portal:Current_events" title="Articles related to current events"><span>Current events</span></a></li><li id="n-randompage" class="mw-list-item"><a href="/wiki/Special:Random" title="Visit a randomly selected article [x]" accesskey="x"><span>Random article</span></a></li><li id="n-aboutsite" class="mw-list-item"><a href="/wiki/Wikipedia:About" title="Learn about Wikipedia and how it works"><span>About Wikipedia</span></a></li><li id="n-contactpage" class="mw-list-item"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us" title="How to contact Wikipedia"><span>Contact us</span></a></li> </ul> </div> </div> <div id="p-interaction" class="vector-menu mw-portlet mw-portlet-interaction" > <div class="vector-menu-heading"> Contribute </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="n-help" class="mw-list-item"><a href="/wiki/Help:Contents" title="Guidance on how to use and edit Wikipedia"><span>Help</span></a></li><li id="n-introduction" class="mw-list-item"><a href="/wiki/Help:Introduction" title="Learn how to edit Wikipedia"><span>Learn to edit</span></a></li><li id="n-portal" class="mw-list-item"><a href="/wiki/Wikipedia:Community_portal" title="The hub for editors"><span>Community portal</span></a></li><li id="n-recentchanges" class="mw-list-item"><a href="/wiki/Special:RecentChanges" title="A list of recent changes to Wikipedia [r]" accesskey="r"><span>Recent changes</span></a></li><li id="n-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_upload_wizard" title="Add images or other media for use on Wikipedia"><span>Upload file</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> <a href="/wiki/Main_Page" class="mw-logo"> <img class="mw-logo-icon" src="/static/images/icons/wikipedia.png" alt="" aria-hidden="true" height="50" width="50"> <span class="mw-logo-container skin-invert"> <img class="mw-logo-wordmark" alt="Wikipedia" src="/static/images/mobile/copyright/wikipedia-wordmark-en.svg" style="width: 7.5em; height: 1.125em;"> <img class="mw-logo-tagline" alt="The Free Encyclopedia" src="/static/images/mobile/copyright/wikipedia-tagline-en.svg" width="117" height="13" style="width: 7.3125em; height: 0.8125em;"> </span> </a> </div> <div class="vector-header-end"> <div id="p-search" role="search" class="vector-search-box-vue vector-search-box-collapses vector-search-box-show-thumbnail vector-search-box-auto-expand-width vector-search-box"> <a href="/wiki/Special:Search" class="cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only search-toggle" title="Search Wikipedia [f]" accesskey="f"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span> <span>Search</span> </a> <div class="vector-typeahead-search-container"> <div class="cdx-typeahead-search cdx-typeahead-search--show-thumbnail cdx-typeahead-search--auto-expand-width"> <form action="/w/index.php" id="searchform" class="cdx-search-input cdx-search-input--has-end-button"> <div id="simpleSearch" class="cdx-search-input__input-wrapper" data-search-loc="header-moved"> <div class="cdx-text-input cdx-text-input--has-start-icon"> <input class="cdx-text-input__input" type="search" name="search" placeholder="Search Wikipedia" aria-label="Search Wikipedia" autocapitalize="sentences" title="Search Wikipedia [f]" accesskey="f" id="searchInput" > <span class="cdx-text-input__icon cdx-text-input__start-icon"></span> </div> <input type="hidden" name="title" value="Special:Search"> </div> <button class="cdx-button cdx-search-input__end-button">Search</button> </form> </div> </div> </div> <nav class="vector-user-links vector-user-links-wide" aria-label="Personal tools"> <div class="vector-user-links-main"> <div id="p-vector-user-menu-preferences" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-userpage" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-dropdown" class="vector-dropdown " title="Change the appearance of the page's font size, width, and color" > <input type="checkbox" id="vector-appearance-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-appearance-dropdown" class="vector-dropdown-checkbox " aria-label="Appearance" > <label id="vector-appearance-dropdown-label" for="vector-appearance-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span class="vector-dropdown-label-text">Appearance</span> </label> <div class="vector-dropdown-content"> <div id="vector-appearance-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <div id="p-vector-user-menu-notifications" class="vector-menu mw-portlet emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> <div id="p-vector-user-menu-overflow" class="vector-menu mw-portlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en" class=""><span>Donate</span></a> </li> <li id="pt-createaccount-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:CreateAccount&returnto=Comparison+of+command+shells" title="You are encouraged to create an account and log in; however, it is not mandatory" class=""><span>Create account</span></a> </li> <li id="pt-login-2" class="user-links-collapsible-item mw-list-item user-links-collapsible-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogin&returnto=Comparison+of+command+shells" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o" class=""><span>Log in</span></a> </li> </ul> </div> </div> </div> <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-button-flush-right vector-user-menu-logged-out" title="Log in and more options" > <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox " aria-label="Personal tools" > <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-ellipsis mw-ui-icon-wikimedia-ellipsis"></span> <span class="vector-dropdown-label-text">Personal tools</span> </label> <div class="vector-dropdown-content"> <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal user-links-collapsible-item" title="User menu" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-sitesupport" class="user-links-collapsible-item mw-list-item"><a href="https://donate.wikimedia.org/wiki/Special:FundraiserRedirector?utm_source=donate&utm_medium=sidebar&utm_campaign=C13_en.wikipedia.org&uselang=en"><span>Donate</span></a></li><li id="pt-createaccount" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:CreateAccount&returnto=Comparison+of+command+shells" title="You are encouraged to create an account and log in; however, it is not mandatory"><span class="vector-icon mw-ui-icon-userAdd mw-ui-icon-wikimedia-userAdd"></span> <span>Create account</span></a></li><li id="pt-login" class="user-links-collapsible-item mw-list-item"><a href="/w/index.php?title=Special:UserLogin&returnto=Comparison+of+command+shells" title="You're encouraged to log in; however, it's not mandatory. [o]" accesskey="o"><span class="vector-icon mw-ui-icon-logIn mw-ui-icon-wikimedia-logIn"></span> <span>Log in</span></a></li> </ul> </div> </div> <div id="p-user-menu-anon-editor" class="vector-menu mw-portlet mw-portlet-user-menu-anon-editor" > <div class="vector-menu-heading"> Pages for logged out editors <a href="/wiki/Help:Introduction" aria-label="Learn more about editing"><span>learn more</span></a> </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="pt-anoncontribs" class="mw-list-item"><a href="/wiki/Special:MyContributions" title="A list of edits made from this IP address [y]" accesskey="y"><span>Contributions</span></a></li><li id="pt-anontalk" class="mw-list-item"><a href="/wiki/Special:MyTalk" title="Discussion about edits from this IP address [n]" accesskey="n"><span>Talk</span></a></li> </ul> </div> </div> </div> </div> </nav> </div> </header> </div> <div class="mw-page-container"> <div class="mw-page-container-inner"> <div class="vector-sitenotice-container"> <div id="siteNotice"><!-- CentralNotice --></div> </div> <div class="vector-column-start"> <div class="vector-main-menu-container"> <div id="mw-navigation"> <nav id="mw-panel" class="vector-main-menu-landmark" aria-label="Site"> <div id="vector-main-menu-pinned-container" class="vector-pinned-container"> </div> </nav> </div> </div> <div class="vector-sticky-pinned-container"> <nav id="mw-panel-toc" aria-label="Contents" data-event-name="ui.sidebar-toc" class="mw-table-of-contents-container vector-toc-landmark"> <div id="vector-toc-pinned-container" class="vector-pinned-container"> <div id="vector-toc" class="vector-toc vector-pinnable-element"> <div class="vector-pinnable-header vector-toc-pinnable-header vector-pinnable-header-pinned" data-feature-name="toc-pinned" data-pinnable-element-id="vector-toc" > <h2 class="vector-pinnable-header-label">Contents</h2> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-toc.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-toc.unpin">hide</button> </div> <ul class="vector-toc-contents" id="mw-panel-toc-list"> <li id="toc-mw-content-text" class="vector-toc-list-item vector-toc-level-1"> <a href="#" class="vector-toc-link"> <div class="vector-toc-text">(Top)</div> </a> </li> <li id="toc-General_characteristics" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#General_characteristics"> <div class="vector-toc-text"> <span class="vector-toc-numb">1</span> <span>General characteristics</span> </div> </a> <ul id="toc-General_characteristics-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Interactive_features" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Interactive_features"> <div class="vector-toc-text"> <span class="vector-toc-numb">2</span> <span>Interactive features</span> </div> </a> <button aria-controls="toc-Interactive_features-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Interactive features subsection</span> </button> <ul id="toc-Interactive_features-sublist" class="vector-toc-list"> <li id="toc-Background_execution" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Background_execution"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.1</span> <span>Background execution</span> </div> </a> <ul id="toc-Background_execution-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Completions" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Completions"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.2</span> <span>Completions</span> </div> </a> <ul id="toc-Completions-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Command_history" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Command_history"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.3</span> <span>Command history</span> </div> </a> <ul id="toc-Command_history-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Mandatory_argument_prompt" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Mandatory_argument_prompt"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.4</span> <span>Mandatory argument prompt</span> </div> </a> <ul id="toc-Mandatory_argument_prompt-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Automatic_suggestions" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Automatic_suggestions"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.5</span> <span>Automatic suggestions</span> </div> </a> <ul id="toc-Automatic_suggestions-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Directory_history,_stack_or_similar_features" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Directory_history,_stack_or_similar_features"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.6</span> <span>Directory history, stack or similar features</span> </div> </a> <ul id="toc-Directory_history,_stack_or_similar_features-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Implicit_directory_change" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Implicit_directory_change"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.7</span> <span>Implicit directory change</span> </div> </a> <ul id="toc-Implicit_directory_change-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Autocorrection" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Autocorrection"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.8</span> <span>Autocorrection</span> </div> </a> <ul id="toc-Autocorrection-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Progress_indicator" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Progress_indicator"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.9</span> <span>Progress indicator</span> </div> </a> <ul id="toc-Progress_indicator-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Colored_directory_listings" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Colored_directory_listings"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.10</span> <span>Colored directory listings</span> </div> </a> <ul id="toc-Colored_directory_listings-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Text_highlighting" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Text_highlighting"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.11</span> <span>Text highlighting</span> </div> </a> <ul id="toc-Text_highlighting-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Syntax_highlighting" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Syntax_highlighting"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.12</span> <span>Syntax highlighting</span> </div> </a> <ul id="toc-Syntax_highlighting-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Context_sensitive_help" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Context_sensitive_help"> <div class="vector-toc-text"> <span class="vector-toc-numb">2.13</span> <span>Context sensitive help</span> </div> </a> <ul id="toc-Context_sensitive_help-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Programming_features" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Programming_features"> <div class="vector-toc-text"> <span class="vector-toc-numb">3</span> <span>Programming features</span> </div> </a> <ul id="toc-Programming_features-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-String_processing_and_filename_matching" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#String_processing_and_filename_matching"> <div class="vector-toc-text"> <span class="vector-toc-numb">4</span> <span>String processing and filename matching</span> </div> </a> <ul id="toc-String_processing_and_filename_matching-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Inter-process_communication" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Inter-process_communication"> <div class="vector-toc-text"> <span class="vector-toc-numb">5</span> <span>Inter-process communication</span> </div> </a> <button aria-controls="toc-Inter-process_communication-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Inter-process communication subsection</span> </button> <ul id="toc-Inter-process_communication-sublist" class="vector-toc-list"> <li id="toc-Keystroke_stacking" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Keystroke_stacking"> <div class="vector-toc-text"> <span class="vector-toc-numb">5.1</span> <span>Keystroke stacking</span> </div> </a> <ul id="toc-Keystroke_stacking-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Security_features" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Security_features"> <div class="vector-toc-text"> <span class="vector-toc-numb">6</span> <span>Security features</span> </div> </a> <button aria-controls="toc-Security_features-sublist" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-toc-toggle"> <span class="vector-icon mw-ui-icon-wikimedia-expand"></span> <span>Toggle Security features subsection</span> </button> <ul id="toc-Security_features-sublist" class="vector-toc-list"> <li id="toc-Secure_prompt" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Secure_prompt"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.1</span> <span>Secure prompt</span> </div> </a> <ul id="toc-Secure_prompt-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Execute_permission" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Execute_permission"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.2</span> <span>Execute permission</span> </div> </a> <ul id="toc-Execute_permission-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Restricted_shell_subset" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Restricted_shell_subset"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.3</span> <span>Restricted shell subset</span> </div> </a> <ul id="toc-Restricted_shell_subset-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-Safe_data_subset" class="vector-toc-list-item vector-toc-level-2"> <a class="vector-toc-link" href="#Safe_data_subset"> <div class="vector-toc-text"> <span class="vector-toc-numb">6.4</span> <span>Safe data subset</span> </div> </a> <ul id="toc-Safe_data_subset-sublist" class="vector-toc-list"> </ul> </li> </ul> </li> <li id="toc-Notes" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#Notes"> <div class="vector-toc-text"> <span class="vector-toc-numb">7</span> <span>Notes</span> </div> </a> <ul id="toc-Notes-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-References" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#References"> <div class="vector-toc-text"> <span class="vector-toc-numb">8</span> <span>References</span> </div> </a> <ul id="toc-References-sublist" class="vector-toc-list"> </ul> </li> <li id="toc-External_links" class="vector-toc-list-item vector-toc-level-1 vector-toc-list-item-expanded"> <a class="vector-toc-link" href="#External_links"> <div class="vector-toc-text"> <span class="vector-toc-numb">9</span> <span>External links</span> </div> </a> <ul id="toc-External_links-sublist" class="vector-toc-list"> </ul> </li> </ul> </div> </div> </nav> </div> </div> <div class="mw-content-container"> <main id="content" class="mw-body"> <header class="mw-body-header vector-page-titlebar"> <nav aria-label="Contents" class="vector-toc-landmark"> <div id="vector-page-titlebar-toc" class="vector-dropdown vector-page-titlebar-toc vector-button-flush-left" > <input type="checkbox" id="vector-page-titlebar-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-titlebar-toc" class="vector-dropdown-checkbox " aria-label="Toggle the table of contents" > <label id="vector-page-titlebar-toc-label" for="vector-page-titlebar-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--icon-only " aria-hidden="true" ><span class="vector-icon mw-ui-icon-listBullet mw-ui-icon-wikimedia-listBullet"></span> <span class="vector-dropdown-label-text">Toggle the table of contents</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-titlebar-toc-unpinned-container" class="vector-unpinned-container"> </div> </div> </div> </nav> <h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">Comparison of command shells</span></h1> <div id="p-lang-btn" class="vector-dropdown mw-portlet mw-portlet-lang" > <input type="checkbox" id="p-lang-btn-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-p-lang-btn" class="vector-dropdown-checkbox mw-interlanguage-selector" aria-label="This article exist only in this language. Add the article for other languages" > <label id="p-lang-btn-label" for="p-lang-btn-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet cdx-button--action-progressive mw-portlet-lang-heading-0" aria-hidden="true" ><span class="vector-icon mw-ui-icon-language-progressive mw-ui-icon-wikimedia-language-progressive"></span> <span class="vector-dropdown-label-text">Add languages</span> </label> <div class="vector-dropdown-content"> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> <div class="after-portlet after-portlet-lang"><span class="uls-after-portlet-link"></span><span class="wb-langlinks-add wb-langlinks-link"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q4438323#sitelinks-wikipedia" title="Add interlanguage links" class="wbc-editpage">Add links</a></span></div> </div> </div> </div> </header> <div class="vector-page-toolbar"> <div class="vector-page-toolbar-container"> <div id="left-navigation"> <nav aria-label="Namespaces"> <div id="p-associated-pages" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-associated-pages" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-nstab-main" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Comparison_of_command_shells" title="View the content page [c]" accesskey="c"><span>Article</span></a></li><li id="ca-talk" class="vector-tab-noicon mw-list-item"><a href="/wiki/Talk:Comparison_of_command_shells" rel="discussion" title="Discuss improvements to the content page [t]" accesskey="t"><span>Talk</span></a></li> </ul> </div> </div> <div id="vector-variants-dropdown" class="vector-dropdown emptyPortlet" > <input type="checkbox" id="vector-variants-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-variants-dropdown" class="vector-dropdown-checkbox " aria-label="Change language variant" > <label id="vector-variants-dropdown-label" for="vector-variants-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">English</span> </label> <div class="vector-dropdown-content"> <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants emptyPortlet" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> </ul> </div> </div> </div> </div> </nav> </div> <div id="right-navigation" class="vector-collapsible"> <nav aria-label="Views"> <div id="p-views" class="vector-menu vector-menu-tabs mw-portlet mw-portlet-views" > <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-view" class="selected vector-tab-noicon mw-list-item"><a href="/wiki/Comparison_of_command_shells"><span>Read</span></a></li><li id="ca-edit" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Comparison_of_command_shells&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-history" class="vector-tab-noicon mw-list-item"><a href="/w/index.php?title=Comparison_of_command_shells&action=history" title="Past revisions of this page [h]" accesskey="h"><span>View history</span></a></li> </ul> </div> </div> </nav> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-dropdown" class="vector-dropdown vector-page-tools-dropdown" > <input type="checkbox" id="vector-page-tools-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-page-tools-dropdown" class="vector-dropdown-checkbox " aria-label="Tools" > <label id="vector-page-tools-dropdown-label" for="vector-page-tools-dropdown-checkbox" class="vector-dropdown-label cdx-button cdx-button--fake-button cdx-button--fake-button--enabled cdx-button--weight-quiet" aria-hidden="true" ><span class="vector-dropdown-label-text">Tools</span> </label> <div class="vector-dropdown-content"> <div id="vector-page-tools-unpinned-container" class="vector-unpinned-container"> <div id="vector-page-tools" class="vector-page-tools vector-pinnable-element"> <div class="vector-pinnable-header vector-page-tools-pinnable-header vector-pinnable-header-unpinned" data-feature-name="page-tools-pinned" data-pinnable-element-id="vector-page-tools" data-pinned-container-id="vector-page-tools-pinned-container" data-unpinned-container-id="vector-page-tools-unpinned-container" > <div class="vector-pinnable-header-label">Tools</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-page-tools.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-page-tools.unpin">hide</button> </div> <div id="p-cactions" class="vector-menu mw-portlet mw-portlet-cactions emptyPortlet vector-has-collapsible-items" title="More options" > <div class="vector-menu-heading"> Actions </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="ca-more-view" class="selected vector-more-collapsible-item mw-list-item"><a href="/wiki/Comparison_of_command_shells"><span>Read</span></a></li><li id="ca-more-edit" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Comparison_of_command_shells&action=edit" title="Edit this page [e]" accesskey="e"><span>Edit</span></a></li><li id="ca-more-history" class="vector-more-collapsible-item mw-list-item"><a href="/w/index.php?title=Comparison_of_command_shells&action=history"><span>View history</span></a></li> </ul> </div> </div> <div id="p-tb" class="vector-menu mw-portlet mw-portlet-tb" > <div class="vector-menu-heading"> General </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-whatlinkshere" class="mw-list-item"><a href="/wiki/Special:WhatLinksHere/Comparison_of_command_shells" title="List of all English Wikipedia pages containing links to this page [j]" accesskey="j"><span>What links here</span></a></li><li id="t-recentchangeslinked" class="mw-list-item"><a href="/wiki/Special:RecentChangesLinked/Comparison_of_command_shells" rel="nofollow" title="Recent changes in pages linked from this page [k]" accesskey="k"><span>Related changes</span></a></li><li id="t-upload" class="mw-list-item"><a href="/wiki/Wikipedia:File_Upload_Wizard" title="Upload files [u]" accesskey="u"><span>Upload file</span></a></li><li id="t-specialpages" class="mw-list-item"><a href="/wiki/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q"><span>Special pages</span></a></li><li id="t-permalink" class="mw-list-item"><a href="/w/index.php?title=Comparison_of_command_shells&oldid=1246083882" title="Permanent link to this revision of this page"><span>Permanent link</span></a></li><li id="t-info" class="mw-list-item"><a href="/w/index.php?title=Comparison_of_command_shells&action=info" title="More information about this page"><span>Page information</span></a></li><li id="t-cite" class="mw-list-item"><a href="/w/index.php?title=Special:CiteThisPage&page=Comparison_of_command_shells&id=1246083882&wpFormIdentifier=titleform" title="Information on how to cite this page"><span>Cite this page</span></a></li><li id="t-urlshortener" class="mw-list-item"><a href="/w/index.php?title=Special:UrlShortener&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComparison_of_command_shells"><span>Get shortened URL</span></a></li><li id="t-urlshortener-qrcode" class="mw-list-item"><a href="/w/index.php?title=Special:QrCode&url=https%3A%2F%2Fen.wikipedia.org%2Fwiki%2FComparison_of_command_shells"><span>Download QR code</span></a></li> </ul> </div> </div> <div id="p-coll-print_export" class="vector-menu mw-portlet mw-portlet-coll-print_export" > <div class="vector-menu-heading"> Print/export </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="coll-download-as-rl" class="mw-list-item"><a href="/w/index.php?title=Special:DownloadAsPdf&page=Comparison_of_command_shells&action=show-download-screen" title="Download this page as a PDF file"><span>Download as PDF</span></a></li><li id="t-print" class="mw-list-item"><a href="/w/index.php?title=Comparison_of_command_shells&printable=yes" title="Printable version of this page [p]" accesskey="p"><span>Printable version</span></a></li> </ul> </div> </div> <div id="p-wikibase-otherprojects" class="vector-menu mw-portlet mw-portlet-wikibase-otherprojects" > <div class="vector-menu-heading"> In other projects </div> <div class="vector-menu-content"> <ul class="vector-menu-content-list"> <li id="t-wikibase" class="wb-otherproject-link wb-otherproject-wikibase-dataitem mw-list-item"><a href="https://www.wikidata.org/wiki/Special:EntityPage/Q4438323" title="Structured data on this page hosted by Wikidata [g]" accesskey="g"><span>Wikidata item</span></a></li> </ul> </div> </div> </div> </div> </div> </div> </nav> </div> </div> </div> <div class="vector-column-end"> <div class="vector-sticky-pinned-container"> <nav class="vector-page-tools-landmark" aria-label="Page tools"> <div id="vector-page-tools-pinned-container" class="vector-pinned-container"> </div> </nav> <nav class="vector-appearance-landmark" aria-label="Appearance"> <div id="vector-appearance-pinned-container" class="vector-pinned-container"> <div id="vector-appearance" class="vector-appearance vector-pinnable-element"> <div class="vector-pinnable-header vector-appearance-pinnable-header vector-pinnable-header-pinned" data-feature-name="appearance-pinned" data-pinnable-element-id="vector-appearance" data-pinned-container-id="vector-appearance-pinned-container" data-unpinned-container-id="vector-appearance-unpinned-container" > <div class="vector-pinnable-header-label">Appearance</div> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.vector-appearance.pin">move to sidebar</button> <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.vector-appearance.unpin">hide</button> </div> </div> </div> </nav> </div> </div> <div id="bodyContent" class="vector-body" aria-labelledby="firstHeading" data-mw-ve-target-container> <div class="vector-body-before-content"> <div class="mw-indicators"> </div> <div id="siteSub" class="noprint">From Wikipedia, the free encyclopedia</div> </div> <div id="contentSub"><div id="mw-content-subtitle"></div></div> <div id="mw-content-text" class="mw-body-content"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr"><p class="mw-empty-elt"> </p> <style data-mw-deduplicate="TemplateStyles:r1236090951">.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}</style><div role="note" class="hatnote navigation-not-searchable">Further information: <a href="/wiki/Shell_(computing)" title="Shell (computing)">Shell (computing)</a></div> <style data-mw-deduplicate="TemplateStyles:r1251242444">.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}</style><style data-mw-deduplicate="TemplateStyles:r1248332772">.mw-parser-output .multiple-issues-text{width:95%;margin:0.2em 0}.mw-parser-output .multiple-issues-text>.mw-collapsible-content{margin-top:0.3em}.mw-parser-output .compact-ambox .ambox{border:none;border-collapse:collapse;background-color:transparent;margin:0 0 0 1.6em!important;padding:0!important;width:auto;display:block}body.mediawiki .mw-parser-output .compact-ambox .ambox.mbox-small-left{font-size:100%;width:auto;margin:0}.mw-parser-output .compact-ambox .ambox .mbox-text{padding:0!important;margin:0!important}.mw-parser-output .compact-ambox .ambox .mbox-text-span{display:list-item;line-height:1.5em;list-style-type:disc}body.skin-minerva .mw-parser-output .multiple-issues-text>.mw-collapsible-toggle,.mw-parser-output .compact-ambox .ambox .mbox-image,.mw-parser-output .compact-ambox .ambox .mbox-imageright,.mw-parser-output .compact-ambox .ambox .mbox-empty-cell,.mw-parser-output .compact-ambox .hide-when-compact{display:none}</style><table class="box-Multiple_issues plainlinks metadata ambox ambox-content ambox-multiple_issues compact-ambox" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/40px-Ambox_important.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/60px-Ambox_important.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/80px-Ambox_important.svg.png 2x" data-file-width="40" data-file-height="40" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span"><div class="multiple-issues-text mw-collapsible"><b>This article has multiple issues.</b> Please help <b><a href="/wiki/Special:EditPage/Comparison_of_command_shells" title="Special:EditPage/Comparison of command shells">improve it</a></b> or discuss these issues on the <b><a href="/wiki/Talk:Comparison_of_command_shells" title="Talk:Comparison of command shells">talk page</a></b>. <small><i>(<a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove these messages</a>)</i></small> <div class="mw-collapsible-content"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-More_citations_needed plainlinks metadata ambox ambox-content ambox-Refimprove" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><a href="/wiki/File:Question_book-new.svg" class="mw-file-description"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/99/Question_book-new.svg/50px-Question_book-new.svg.png" decoding="async" width="50" height="39" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/99/Question_book-new.svg/75px-Question_book-new.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/99/Question_book-new.svg/100px-Question_book-new.svg.png 2x" data-file-width="512" data-file-height="399" /></a></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article <b>needs additional citations for <a href="/wiki/Wikipedia:Verifiability" title="Wikipedia:Verifiability">verification</a></b>.<span class="hide-when-compact"> Please help <a href="/wiki/Special:EditPage/Comparison_of_command_shells" title="Special:EditPage/Comparison of command shells">improve this article</a> by <a href="/wiki/Help:Referencing_for_beginners" title="Help:Referencing for beginners">adding citations to reliable sources</a>. Unsourced material may be challenged and removed.<br /><small><span class="plainlinks"><i>Find sources:</i> <a rel="nofollow" class="external text" href="https://www.google.com/search?as_eq=wikipedia&q=%22Comparison+of+command+shells%22">"Comparison of command shells"</a> – <a rel="nofollow" class="external text" href="https://www.google.com/search?tbm=nws&q=%22Comparison+of+command+shells%22+-wikipedia&tbs=ar:1">news</a> <b>·</b> <a rel="nofollow" class="external text" href="https://www.google.com/search?&q=%22Comparison+of+command+shells%22&tbs=bkt:s&tbm=bks">newspapers</a> <b>·</b> <a rel="nofollow" class="external text" href="https://www.google.com/search?tbs=bks:1&q=%22Comparison+of+command+shells%22+-wikipedia">books</a> <b>·</b> <a rel="nofollow" class="external text" href="https://scholar.google.com/scholar?q=%22Comparison+of+command+shells%22">scholar</a> <b>·</b> <a rel="nofollow" class="external text" href="https://www.jstor.org/action/doBasicSearch?Query=%22Comparison+of+command+shells%22&acc=on&wc=on">JSTOR</a></span></small></span> <span class="date-container"><i>(<span class="date">August 2011</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-Undue_weight plainlinks metadata ambox ambox-content ambox-undue-weight" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span class="skin-invert-image" typeof="mw:File"><span><img src="//upload.wikimedia.org/wikipedia/commons/thumb/f/fe/Unbalanced_scales.svg/45px-Unbalanced_scales.svg.png" decoding="async" width="45" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/f/fe/Unbalanced_scales.svg/68px-Unbalanced_scales.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/f/fe/Unbalanced_scales.svg/90px-Unbalanced_scales.svg.png 2x" data-file-width="400" data-file-height="354" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">This article may <b>lend <a href="/wiki/Wikipedia:Neutral_point_of_view#Due_and_undue_weight" title="Wikipedia:Neutral point of view">undue weight</a> to certain ideas, incidents, or controversies</b>.<span class="hide-when-compact"> Please <a class="external text" href="https://en.wikipedia.org/w/index.php?title=Comparison_of_command_shells&action=edit">help improve it</a> by rewriting it in a <b><a href="/wiki/Wikipedia:Neutral_point_of_view#Balance" title="Wikipedia:Neutral point of view">balanced fashion</a></b> that contextualizes different points of view.</span> <span class="date-container"><i>(<span class="date">October 2013</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-POV plainlinks metadata ambox ambox-content ambox-POV" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span class="skin-invert" typeof="mw:File"><span><img src="//upload.wikimedia.org/wikipedia/commons/thumb/f/fe/Unbalanced_scales.svg/45px-Unbalanced_scales.svg.png" decoding="async" width="45" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/f/fe/Unbalanced_scales.svg/68px-Unbalanced_scales.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/f/fe/Unbalanced_scales.svg/90px-Unbalanced_scales.svg.png 2x" data-file-width="400" data-file-height="354" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">The <b><a href="/wiki/Wikipedia:Neutral_point_of_view" title="Wikipedia:Neutral point of view">neutrality</a> of this article is <a href="/wiki/Wikipedia:NPOV_dispute" title="Wikipedia:NPOV dispute">disputed</a></b>.<span class="hide-when-compact"> Relevant discussion may be found on the <a href="/wiki/Talk:Comparison_of_command_shells##" title="Talk:Comparison of command shells">talk page</a>. Please do not remove this message until <a href="/wiki/Template:POV#When_to_remove" title="Template:POV">conditions to do so are met</a>.</span> <span class="date-container"><i>(<span class="date">July 2014</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> </div> </div><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <p class="mw-empty-elt"> </p> <figure typeof="mw:File/Thumb"><a href="/wiki/File:Bash_screenshot.png" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/e/e7/Bash_screenshot.png/250px-Bash_screenshot.png" decoding="async" width="250" height="340" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/e/e7/Bash_screenshot.png/375px-Bash_screenshot.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/e/e7/Bash_screenshot.png/500px-Bash_screenshot.png 2x" data-file-width="562" data-file-height="765" /></a><figcaption><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">Bash</a>, the default shell on many GNU/Linux systems.</figcaption></figure> <p>A <a href="/wiki/Command_shell" class="mw-redirect" title="Command shell">command shell</a> is a <a href="/wiki/Command-line_interface" title="Command-line interface">command-line interface</a> to interact with and manipulate a computer's <a href="/wiki/Operating_system" title="Operating system">operating system</a>. </p> <meta property="mw:PageProp/toc" /> <div class="mw-heading mw-heading2"><h2 id="General_characteristics">General characteristics</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=1" title="Edit section: General characteristics"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <table class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller;"> <tbody><tr> <th>Shell </th> <th>Usual environment </th> <th>Usually invoked </th> <th>Introduced </th> <th><a href="/wiki/Cross-platform" class="mw-redirect" title="Cross-platform">Platform-independent</a> </th> <th>Default login shell in </th> <th>Default script shell in </th> <th>License </th> <th>Source code availability </th> <th>User interface </th> <th>Mouse support </th> <th><a href="/wiki/Unicode" title="Unicode">Unicode</a> support </th> <th><a href="/wiki/ISO_8601" title="ISO 8601">ISO 8601</a> support </th> <th><a href="/wiki/Console_redirection" class="mw-redirect" title="Console redirection">Console redirection</a> </th> <th><a href="/wiki/Standard_streams" title="Standard streams">Stream</a> <a href="/wiki/Redirection_(computing)" title="Redirection (computing)">redirection</a> </th> <th>Configurability </th> <th>Startup/shutdown scripts </th> <th>Batch scripts </th> <th>Logging </th> <th>Available as statically linked, independent single file executable </th></tr> <tr> <th><a href="/wiki/Thompson_shell" title="Thompson shell">Thompson shell</a> </th> <td><a href="/wiki/Unix" title="Unix">UNIX</a> </td> <td>sh </td> <td>1971 </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td><a href="/wiki/Unix" title="Unix">UNIX</a> </td> <td><a href="/wiki/Unix" title="Unix">UNIX</a> </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based <a href="/wiki/Command-line_interface" title="Command-line interface">CLI</a> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> 1977 version </th> <td><a href="/wiki/Version_7_Unix" title="Version 7 Unix">7th Ed. UNIX</a> </td> <td>sh </td> <td>1977 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> </td> <td><a href="/wiki/Version_7_Unix" title="Version 7 Unix">7th Ed. UNIX</a> </td> <td><a href="/wiki/Version_7_Unix" title="Version 7 Unix">7th Ed. UNIX</a>, </td> <td style="background: #E7E7FF; color:black; vertical-align: middle; text-align: center;" class="table-proprietary">Proprietary<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based <a href="/wiki/Command-line_interface" title="Command-line interface">CLI</a> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <style data-mw-deduplicate="TemplateStyles:r886049734">.mw-parser-output .monospaced{font-family:monospace,monospace}</style><span class="monospaced"><a href="/wiki/File_descriptor" title="File descriptor">fds</a></span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.profile</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> current version </th> <td>Various <a href="/wiki/Unix" title="Unix">UNIX</a> </td> <td>sh </td> <td>1977 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> </td> <td>SunOS-5.x, FreeBSD<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> </td> <td>SunOS-5.x </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/Common_Development_and_Distribution_License" title="Common Development and Distribution License">CDDL</a><sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup class="noprint Inline-Template noprint noexcerpt Template-Fact" style="white-space:nowrap;">[<i><a href="/wiki/Wikipedia:NOTRS" class="mw-redirect" title="Wikipedia:NOTRS"><span title="This claim needs references to better sources. (April 2015)">better source needed</span></a></i>]</sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based <a href="/wiki/Command-line_interface" title="Command-line interface">CLI</a> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>nb 1<span class="cite-bracket">]</span></a></sup><sup class="noprint Inline-Template noprint noexcerpt Template-Fact" style="white-space:nowrap;">[<i><a href="/wiki/Wikipedia:NOTRS" class="mw-redirect" title="Wikipedia:NOTRS"><span title="This claim needs references to better sources. (April 2015)">better source needed</span></a></i>]</sup> </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.profile</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>nb 2<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/POSIX" title="POSIX">POSIX</a> shell<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>sh </td> <td>1992<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes, if used by configured locale </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td>Unspecified (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.profile</span> given as an example) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td></tr> <tr> <th><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> (v4) </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>bash, sh </td> <td>1989<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/GNU" title="GNU">GNU</a>, <a href="/wiki/Linux" title="Linux">Linux</a> (default for root), <a href="/wiki/MacOS" title="MacOS">macOS</a> 10.3–10.14 </td> <td><a href="/wiki/GNU" title="GNU">GNU</a>, <a href="/wiki/Linux" title="Linux">Linux</a>, <a href="/wiki/Haiku_(operating_system)" title="Haiku (operating system)">Haiku</a>, <a href="/wiki/MacOS" title="MacOS">macOS</a> 10.3–10.14 </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/GPL" class="mw-redirect" title="GPL">GPL</a> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup><sup class="noprint Inline-Template noprint noexcerpt Template-Fact" style="white-space:nowrap;">[<i><a href="/wiki/Wikipedia:NOTRS" class="mw-redirect" title="Wikipedia:NOTRS"><span title="Unicode escape is just a small part of Unicode support. There's also editing and string handling. This works in bash 4.3.33, but needs a source. (May 2015)">better source needed</span></a></i>]</sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">printf</span> builtin) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/etc/profile</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.bash_profile</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.bash_login</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.profile</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.bashrc</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/C_shell" title="C shell">csh</a> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>csh </td> <td>1978 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/SunOS" title="SunOS">SunOS</a> </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/BSD_licenses" title="BSD licenses">BSD</a> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout+stderr</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.cshrc</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.login</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.logout</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Tcsh" title="Tcsh">tcsh</a> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>tcsh, csh </td> <td>1983<sup id="cite_ref-Greer_12-0" class="reference"><a href="#cite_note-Greer-12"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/FreeBSD" title="FreeBSD">FreeBSD</a> (former default for root),<sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> formerly <a href="/wiki/Mac_OS_X" class="mw-redirect" title="Mac OS X">Mac OS X</a> </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/BSD_licenses" title="BSD licenses">BSD</a> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout+stderr</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/etc/csh.cshrc</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/etc/csh.login</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.tcshrc</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.cshrc</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.history</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.login</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.cshdirs</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton C shell</a> </th> <td><a href="/wiki/Win32" class="mw-redirect" title="Win32">Win32</a>, OS/2 </td> <td>csh </td> <td>1988<sup id="cite_ref-PCWeek_14-0" class="reference"><a href="#cite_note-PCWeek-14"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (OS/2 version no longer maintained) </td> <td style="background: #DFD; color:black; vertical-align: middle; text-align: center;">Optional </td> <td style="background: #DFD; color:black; vertical-align: middle; text-align: center;">Optional </td> <td style="background: #E7E7FF; color:black; vertical-align: middle; text-align: center;" class="table-proprietary"><a href="/wiki/Proprietary_software" title="Proprietary software">Proprietary</a> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (-t timestamp operator) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout+stderr</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via login.csh, startup.csh and logout.csh) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (command line option) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Scsh" title="Scsh">Scsh</a> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>scsh </td> <td>1994 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/BSD_licenses" title="BSD licenses">BSD</a>-style </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Korn_Shell" class="mw-redirect" title="Korn Shell">ksh</a> (ksh93t+) </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>ksh </td> <td>1983<sup id="cite_ref-Gomes_15-0" class="reference"><a href="#cite_note-Gomes-15"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-Harris_16-0" class="reference"><a href="#cite_note-Harris-16"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/AIX" class="mw-redirect" title="AIX">AIX</a>, <a href="/wiki/HP-UX" title="HP-UX">HP-UX</a> </td> <td><a href="/wiki/OpenSolaris" title="OpenSolaris">OpenSolaris</a> </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/Common_Public_License" title="Common Public License">Common Public License</a> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">printf</span> builtin with <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%(%F)T</span><sup id="cite_ref-ksh93-man-page_17-0" class="reference"><a href="#cite_note-ksh93-man-page-17"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span> up to 9)<sup id="cite_ref-ksh93-man-page_17-1" class="reference"><a href="#cite_note-ksh93-man-page-17"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (system and user's <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">profile</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">kshrc</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Pdksh" class="mw-redirect" title="Pdksh">pdksh</a> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>ksh, sh </td> <td>1989? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/OpenBSD" title="OpenBSD">OpenBSD</a><sup id="cite_ref-default_OpenBSD_18-0" class="reference"><a href="#cite_note-default_OpenBSD-18"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> </td> <td><a href="/wiki/OpenBSD" title="OpenBSD">OpenBSD</a><sup id="cite_ref-default_OpenBSD_18-1" class="reference"><a href="#cite_note-default_OpenBSD-18"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/Public_domain" title="Public domain">Public domain</a> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/etc/profile</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.profile</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Zsh" class="mw-redirect" title="Zsh">zsh</a> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>zsh </td> <td>1990 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/Deepin" title="Deepin">Deepin</a>, <a href="/wiki/GoboLinux" title="GoboLinux">GoboLinux</a>, <a href="/wiki/Grml" title="Grml">Grml</a>, <a href="/wiki/MacOS" title="MacOS">macOS</a> 10.15+, <a href="/wiki/Kali_Linux" title="Kali Linux">Kali</a> 2020.4+ </td> <td><a href="/wiki/Grml" title="Grml">Grml</a>, <a href="/wiki/MacOS" title="MacOS">macOS</a> 10.15+ </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/MIT_license" class="mw-redirect" title="MIT license">MIT</a>-style </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">via additional code<sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (various internal features involving the date, by using the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%F</span> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">strftime</span> format<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup> and the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">-i</span> option for the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fc</span> builtin<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span> up to 9)<sup id="cite_ref-22" class="reference"><a href="#cite_note-22"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables, options, functions, styles, etc.) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (system and user's <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">zshenv</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">zprofile</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">zshrc</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">zlogin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">zlogout</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Almquist_shell" title="Almquist shell">ash</a> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>sh </td> <td>1989 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/Minix" title="Minix">Minix</a>, <a href="/wiki/BusyBox" title="BusyBox">BusyBox</a> based systems </td> <td><a href="/wiki/NetBSD" title="NetBSD">NetBSD</a>, <a href="/wiki/Minix" title="Minix">Minix</a>, <a href="/wiki/BusyBox" title="BusyBox">BusyBox</a> based systems </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/BSD_licenses" title="BSD licenses">BSD</a>-style </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (for BusyBox, supported in command-line editing, but not in string handling<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup>) </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">— </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/etc/profile</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.profile</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/CCP_(CP/M)" class="mw-redirect" title="CCP (CP/M)">CCP</a> </th> <td><a href="/wiki/CP/M" title="CP/M">CP/M</a>, <a href="/wiki/MP/M" title="MP/M">MP/M</a> </td> <td>(CCP) </td> <td>1976 (1974) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td><a href="/wiki/CP/M" title="CP/M">CP/M</a> (no login), <a href="/wiki/MP/M" title="MP/M">MP/M</a> </td> <td><a href="/wiki/CP/M" title="CP/M">CP/M</a>, <a href="/wiki/MP/M" title="MP/M">MP/M</a> </td> <td style="background: #E7E7FF; color:black; vertical-align: middle; text-align: center;" class="table-proprietary">Freeware (originally proprietary) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (originally closed-source) </td> <td>Text-based <a href="/wiki/Command-line_interface" title="Command-line interface">CLI</a> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (automatic via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$$$.SUB</span>) </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only via external <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SUBMIT</span> command to update <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$$$.SUB</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/COMMAND.COM" title="COMMAND.COM">COMMAND.COM</a> </th> <td><a href="/wiki/DOS" title="DOS">DOS</a> </td> <td><a href="/wiki/COMMAND_(DOS_command)" class="mw-redirect" title="COMMAND (DOS command)">COMMAND</a> </td> <td>1980 </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (3rd party implementations, not bound to a specific DOS vendor or version, available) </td> <td><a href="/wiki/DOS" title="DOS">DOS</a>, <a href="/wiki/Windows_95" title="Windows 95">Windows 95</a>, <a href="/wiki/Windows_98" title="Windows 98">98</a>, <a href="/wiki/Windows_98_SE" class="mw-redirect" title="Windows 98 SE">SE</a>, <a href="/wiki/Windows_ME" class="mw-redirect" title="Windows ME">ME</a> </td> <td><a href="/wiki/DOS" title="DOS">DOS</a>, <a href="/wiki/Windows_95" title="Windows 95">Windows 95</a>, <a href="/wiki/Windows_98" title="Windows 98">98</a>, <a href="/wiki/Windows_98_SE" class="mw-redirect" title="Windows 98 SE">SE</a>, <a href="/wiki/Windows_ME" class="mw-redirect" title="Windows ME">ME</a> </td> <td>vendor specific, f.e. <a href="/wiki/Microsoft" title="Microsoft">MS</a>-<a href="/wiki/Software_license_agreement" class="mw-redirect" title="Software license agreement">EULA</a>,<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">[</span>nb 3<span class="cite-bracket">]</span></a></sup> or <a href="/wiki/BSD" class="mw-redirect" title="BSD">BSD</a>/<a href="/wiki/GPL" class="mw-redirect" title="GPL">GPL</a> (free clones) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (except for OpenDOS, DR-DOS, PTS/DOS and FreeDOS) </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (except for DR-DOS) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">COMMAND con:</span> or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CTTY con:</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via startup parameters and environment variables, DR-DOS also supports <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DIR /C /R</span> user-default switch command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (automatic <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">\AUTOEXEC.BAT</span> for primary shell, or explicitly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/P</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/P:filename.bat</span> or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CALL</span> command or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/C</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th>OS/2 <a href="/wiki/CMD.EXE_(OS/2)" class="mw-redirect" title="CMD.EXE (OS/2)">CMD.EXE</a> </th> <td><a href="/wiki/OS/2" title="OS/2">OS/2</a>, <a href="/wiki/EComStation" title="EComStation">eComStation</a>, <a href="/wiki/ArcaOS" title="ArcaOS">ArcaOS</a> </td> <td><a href="/wiki/CMD_(OS/2_command)" class="mw-redirect" title="CMD (OS/2 command)">CMD</a> </td> <td>1987 </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td><a href="/wiki/OS/2" title="OS/2">OS/2</a>, <a href="/wiki/EComStation" title="EComStation">eComStation</a>, <a href="/wiki/ArcaOS" title="ArcaOS">ArcaOS</a> </td> <td><a href="/wiki/OS/2" title="OS/2">OS/2</a>, <a href="/wiki/EComStation" title="EComStation">eComStation</a>, <a href="/wiki/ArcaOS" title="ArcaOS">ArcaOS</a> </td> <td style="background: #E7E7FF; color:black; vertical-align: middle; text-align: center;" class="table-proprietary"><a href="/wiki/IBM" title="IBM">IBM</a>-<a href="/wiki/Software_license_agreement" class="mw-redirect" title="Software license agreement">EULA</a><sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>nb 4<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stderr</span>) </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup option) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CALL</span> command or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/C</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th>Windows <a href="/wiki/Cmd.exe" title="Cmd.exe">CMD.EXE</a><sup id="cite_ref-cmd_/x_26-0" class="reference"><a href="#cite_note-cmd_/x-26"><span class="cite-bracket">[</span>nb 5<span class="cite-bracket">]</span></a></sup> </th> <td><a href="/wiki/Win32" class="mw-redirect" title="Win32">Win32</a> </td> <td><a href="/wiki/CMD_(Windows_command)" class="mw-redirect" title="CMD (Windows command)">CMD</a> </td> <td>1993 </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td><a href="/wiki/Microsoft_Windows" title="Microsoft Windows">Windows</a> NT, 2000, XP, Server 2003, Vista </td> <td><a href="/wiki/Microsoft_Windows" title="Microsoft Windows">Windows</a> NT, 2000, XP, Server 2003, Vista </td> <td style="background: #E7E7FF; color:black; vertical-align: middle; text-align: center;" class="table-proprietary"><a href="/wiki/Microsoft" title="Microsoft">MS</a>-<a href="/wiki/Software_license_agreement" class="mw-redirect" title="Software license agreement">EULA</a><sup id="cite_ref-ReferenceA_27-0" class="reference"><a href="#cite_note-ReferenceA-27"><span class="cite-bracket">[</span>nb 6<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/CHCP_(command)" class="mw-redirect" title="CHCP (command)">CHCP</a> <a href="/wiki/Code_page_65001" class="mw-redirect" title="Code page 65001">65001</a></span> for <a href="/wiki/UTF-8" title="UTF-8">UTF-8</a>, but program arguments are still encoded in local codepage) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via registry, startup parameters, and environment variables) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (automatic via registry, or explicitly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup option) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CALL</span> command or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/C</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/4DOS" title="4DOS">4DOS</a>, <a href="/wiki/NDOS" class="mw-redirect" title="NDOS">NDOS</a> </th> <td><a href="/wiki/DOS" title="DOS">DOS</a>, <a href="/wiki/Windows_95" title="Windows 95">Windows 95</a>, <a href="/wiki/Windows_98" title="Windows 98">98</a>, <a href="/wiki/Windows_98_SE" class="mw-redirect" title="Windows 98 SE">SE</a>, <a href="/wiki/Windows_ME" class="mw-redirect" title="Windows ME">ME</a> </td> <td><a href="/wiki/4DOS" title="4DOS">4DOS</a>, <a href="/wiki/NDOS" class="mw-redirect" title="NDOS">NDOS</a> </td> <td>1989 (1986) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (not bound to a specific OS vendor or version) </td> <td style="background: #DFD; color:black; vertical-align: middle; text-align: center;">Optional </td> <td style="background: #DFD; color:black; vertical-align: middle; text-align: center;">Optional </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/MIT_License" title="MIT License">MIT License</a>, with restrictions </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI with <a href="/wiki/Text-based_user_interface" title="Text-based user interface">TUI</a> extensions </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (popups, help system, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%_MOUSE</span> internal variable, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY /M</span> command) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CTTY con:</span>, except for <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DRAWBOX</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DRAWLINE</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DRAWVLINE</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">LIST</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SCREEN</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SCRPUT</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SELECT</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">VSCRPUT</span> commands and file / directory coloring) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stderr</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout+stderr</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4DOS.INI</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">NDOS.INI</span> file, startup parameters, environment variables, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SETDOS</span> command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (automatic <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">\AUTOEXEC.BAT</span> for primary shell and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4START.BTM</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4START.BAT</span> as well as <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4EXIT.BTM</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4EXIT.BAT</span> for any shell, or explicitly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/P</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/P:dir\filename.ext</span> or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CALL</span> command or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/C</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/4OS2" title="4OS2">4OS2</a> </th> <td><a href="/wiki/OS/2" title="OS/2">OS/2</a>, <a href="/wiki/EComStation" title="EComStation">eComStation</a>, <a href="/wiki/ArcaOS" title="ArcaOS">ArcaOS</a> </td> <td><a href="/wiki/4OS2" title="4OS2">4OS2</a> </td> <td>1992 </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (not bound to specific OS/2 versions) </td> <td style="background: #DFD; color:black; vertical-align: middle; text-align: center;">Optional (but bundled with ArcaOS) </td> <td style="background: #DFD; color:black; vertical-align: middle; text-align: center;">Optional </td> <td style="background: #E7E7FF; color:black; vertical-align: middle; text-align: center;" class="table-proprietary">Freeware </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stderr</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout+stderr</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4OS2.INI</span> file, startup parameters, environment variables, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SETDOS</span> command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (automatic via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4START.CMD</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4START.BTM</span> as well as <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4EXIT.CMD</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4EXIT.BTM</span> files, or explicitly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K startup.cmd</span> option) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CALL</span> command or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/C</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td></tr> <tr> <th><a href="/wiki/Take_Command_Console" title="Take Command Console">TCC</a> (formerly 4NT) </th> <td><a href="/wiki/Win32" class="mw-redirect" title="Win32">Win32</a> </td> <td>TCC </td> <td>1993 </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (not bound to specific NT versions) </td> <td>optional </td> <td>optional </td> <td style="background: #E7E7FF; color:black; vertical-align: middle; text-align: center;" class="table-proprietary"><a href="/wiki/Shareware" title="Shareware">Shareware</a> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>Text-based CLI (<a href="/wiki/Take_Command_(command_line_interpreter)" class="mw-redirect" title="Take Command (command line interpreter)">Take Command</a>: <a href="/wiki/GUI" class="mw-redirect" title="GUI">GUI</a>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (console mouse, popups, help system, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%_XMOUSE</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%_YMOUSE</span> internal variables, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY /M</span> command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdin</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stderr</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stdout+stderr</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via registry, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">TCMD.INI</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4NT.INI</span> file, startup parameters, environment variables, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SETDOS</span> command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (automatic via registry and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">TCSTART</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4START</span> as well as <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">TCEXIT</span>/<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4EXIT</span>, or explicitly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup option) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CALL</span> command or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/C</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/K</span> startup options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">VMS DCL</a><sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup> </th> <td><a href="/wiki/OpenVMS" title="OpenVMS">OpenVMS</a> </td> <td>Automatically for login/interactive process </td> <td>1977? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>VMS </td> <td>VMS </td> <td>Proprietary, bundled in VMS </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">by special license only </td> <td>Text-based CLI </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">with DECwindows/Motif </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes, at least to 1988 standard </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">sys$input</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">sys$output</span> assignment) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via symbols, logical names, and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (SYS$MANAGER:SYLOGIN.COM and user defined LOGIN.COM) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a> </th> <td><a href="/wiki/.NET_Core" class="mw-redirect" title=".NET Core">.NET</a>,<br /><a href="/wiki/.NET_Framework" title=".NET Framework">.NET Framework</a> </td> <td>PowerShell </td> <td>2006 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/Microsoft_Windows" title="Microsoft Windows">Windows</a> 10, 8, Server 2008, 7<sup id="cite_ref-optional_29-0" class="reference"><a href="#cite_note-optional-29"><span class="cite-bracket">[</span>nb 7<span class="cite-bracket">]</span></a></sup> </td> <td><a href="/wiki/Microsoft_Windows" title="Microsoft Windows">Windows</a> 10, 8, Server 2008, 7 </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/MIT_license" class="mw-redirect" title="MIT license">MIT</a>-style </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Graphical CLI </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via variables and options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (%USERPROFILE%\Documents \WindowsPowerShell\Microsoft.PowerShell_profile.ps1) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (PowerShell feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a> </th> <td><a href="/wiki/Plan_9_from_Bell_Labs" title="Plan 9 from Bell Labs">Plan 9</a>, <a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>rc </td> <td>1989 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/Plan_9_from_Bell_Labs" title="Plan 9 from Bell Labs">Plan 9</a>, <a href="/wiki/Version_10_Unix" class="mw-redirect" title="Version 10 Unix">Version 10 Unix</a> </td> <td><a href="/wiki/Plan_9_from_Bell_Labs" title="Plan 9 from Bell Labs">Plan 9</a>, <a href="/wiki/Version_10_Unix" class="mw-redirect" title="Version 10 Unix">Version 10 Unix</a> </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/MIT_License" title="MIT License">MIT License</a><sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via options) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$HOME/.rcrc</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a> </th> <td><a href="/wiki/Java_virtual_machine" title="Java virtual machine">Java</a> </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td>2005 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/LGPL" class="mw-redirect" title="LGPL">LGPL</a> </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Friendly_interactive_shell" class="mw-redirect" title="Friendly interactive shell">fish</a> </th> <td><a href="/wiki/POSIX" title="POSIX">POSIX</a> </td> <td>fish </td> <td>2005<sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/GhostBSD" title="GhostBSD">GhostBSD</a> </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/GPL" class="mw-redirect" title="GPL">GPL</a> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (through environment variables and via web interface through <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fish_config</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/etc/fish/config.fish</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.config/fish/config.fish</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Unix feature) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.config/fish/fish_history*</span>) </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td></tr> <tr> <th>Ion </th> <td><a href="/wiki/Redox_(operating_system)" title="Redox (operating system)">Redox</a>, <a href="/wiki/Linux" title="Linux">Linux</a> </td> <td>ion </td> <td>2015<sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td><a href="/wiki/Redox_(operating_system)" title="Redox (operating system)">Redox</a> </td> <td><a href="/wiki/Redox_(operating_system)" title="Redox (operating system)">Redox</a> </td> <td style="background: #DFF; color:black; vertical-align: middle; text-align: center;" class="free table-free"><a href="/wiki/MIT_license" class="mw-redirect" title="MIT license">MIT</a> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>Text-based CLI </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background: var(--background-color-interactive, #EEE); color: var(--color-base, black); vertical-align: middle; white-space: nowrap; text-align: center;" class="table-Unknown">? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<span class="citation-needed-content" style="padding-left:0.1em; padding-right:0.1em; color:var(--color-subtle, #54595d); border:1px solid var(--border-color-subtle, #c8ccd1);">arbitrary <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fds</span></span><sup class="noprint Inline-Template Template-Fact" style="margin-left:0.1em; white-space:nowrap;">[<i><a href="/wiki/Wikipedia:Citation_needed" title="Wikipedia:Citation needed"><span title="This claim needs references to reliable sources. (December 2021)">citation needed</span></a></i>]</sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (follows the XDG Base Directory spec) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.config/ion/initrc</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">~/.local/share/ion/history</span>) </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (not distributed as a standalone executable, but it can be built as one) </td></tr> <tr> <th>Shell </th> <th>Usual environment </th> <th>Usually invoked </th> <th>Introduced </th> <th><a href="/wiki/Cross-platform" class="mw-redirect" title="Cross-platform">Platform-independent</a> </th> <th>Default login shell in </th> <th>Default script shell in </th> <th>License </th> <th>Source code availability </th> <th>User interface </th> <th>Mouse support </th> <th><a href="/wiki/Unicode" title="Unicode">Unicode</a> support </th> <th><a href="/wiki/ISO_8601" title="ISO 8601">ISO 8601</a> support </th> <th>Console redirection </th> <th><a href="/wiki/Standard_streams" title="Standard streams">Stream</a> <a href="/w/index.php?title=Redirection_(Unix)&action=edit&redlink=1" class="new" title="Redirection (Unix) (page does not exist)">redirection</a> </th> <th>Configurability </th> <th>Startup/shutdown scripts </th> <th>Batch scripts </th> <th>Logging </th> <th>Available as statically linked, independent single file executable </th></tr></tbody></table> <div class="mw-heading mw-heading2"><h2 id="Interactive_features">Interactive features</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=2" title="Edit section: Interactive features"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <table class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller;"> <tbody><tr> <th>Shell </th> <th><a href="#Completions">Command<br />name<br />completion</a> </th> <th><a href="#Completions">Path<br />completion</a> </th> <th><a href="#Completions">Command<br />argument<br />completion</a> </th> <th><a href="#Completions">Wildcard<br />completion</a> </th> <th><a href="#Command_history">Command<br />history</a> </th> <th><a href="#Mandatory_argument_prompt">Mandatory<br />argument<br />prompt</a> </th> <th><a href="#Automatic_suggestions">Automatic<br />suggestions</a> </th> <th><a href="#Colored_directory_listings">Colored<br />directory<br />listings</a> </th> <th><a href="#Text_highlighting">Text<br />highlighting</a> </th> <th><a href="#Syntax_highlighting">Syntax<br />highlighting</a> </th> <th><a href="#Directory_history,_stack_or_similar_features">Directory history, stack or similar features</a> </th> <th><a href="#Implicit_directory_change">Implicit<br />directory<br />change</a> </th> <th><a href="#Autocorrection">Auto­correction</a> </th> <th><a href="#Integrated_environment">Integrated<br />environment</a> </th> <th><a href="#Snippets">Snippets</a> </th> <th><a href="#Value_prompt">Value<br />prompt</a> </th> <th><a href="#Menu/options_selector">Menu/options<br />prompt</a> </th> <th><a href="#Progress_indicator">Progress<br />indicator</a> </th> <th><a href="#Context_sensitive_help">Context<br />sensitive<br />help</a> </th></tr> <tr> <th><a href="/wiki/Thompson_shell" title="Thompson shell">Thompson shell</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> 1977 version </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> current version </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-ReferenceB_33-0" class="reference"><a href="#cite_note-ReferenceB-33"><span class="cite-bracket">[</span>nb 8<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-ReferenceB_33-1" class="reference"><a href="#cite_note-ReferenceB-33"><span class="cite-bracket">[</span>nb 8<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (CDPATH, pushd, popd, dirs), CDPATH since SVr4 </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/POSIX" title="POSIX">POSIX</a> shell </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CDPATH</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> (v4.0) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">when defined </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">[</span>nb 9<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CDPATH</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">pushd</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">popd</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">optional </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/C_shell" title="C shell">csh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">cdpath</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">pushd</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">popd</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">optional </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Tcsh" title="Tcsh">tcsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">when defined </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">cdpath</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">pushd</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">popd</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">optional </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton C shell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">cdpath</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">pushd</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">popd</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Scsh" title="Scsh">Scsh</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Korn_Shell" class="mw-redirect" title="Korn Shell">ksh</a> (ksh93t+) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (extendable) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (extendable) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">cdpath</span> builtin, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">pushd</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">popd</span> implemented as functions) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Pdksh" class="mw-redirect" title="Pdksh">pdksh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Zsh" class="mw-redirect" title="Zsh">zsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">when defined </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">predict-on</span> or user-defined<sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Third-party extension<sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">optional </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">when defined (as ZLE widgets) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Almquist_shell" title="Almquist shell">ash</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">External </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/CCP_(CP/M)" class="mw-redirect" title="CCP (CP/M)">CCP</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/COMMAND.COM" title="COMMAND.COM">COMMAND.COM</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No<sup id="cite_ref-doskey_39-0" class="reference"><a href="#cite_note-doskey-39"><span class="cite-bracket">[</span>nb 10<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-drdos_40-0" class="reference"><a href="#cite_note-drdos-40"><span class="cite-bracket">[</span>nb 11<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (only in DR-DOS through <a href="/wiki/%25$ON%25" class="mw-redirect" title="%$ON%">%$ON%</a>, <a href="/wiki/%25$OFF%25" class="mw-redirect" title="%$OFF%">%$OFF%</a>, <a href="/wiki/%25$HEADER%25" class="mw-redirect" title="%$HEADER%">%$HEADER%</a>, <a href="/wiki/%25$FOOTER%25" class="mw-redirect" title="%$FOOTER%">%$FOOTER%</a>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (only single-stepping with COMMAND /Y<sup id="cite_ref-Paul_1997_OD-A3_41-0" class="reference"><a href="#cite_note-Paul_1997_OD-A3-41"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (only via external <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CHOICE</span> command, in DR-DOS also via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SWITCH</span> / <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DRSWITCH</span> internal commands) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>OS/2<br /><a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>Windows<br /><a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">partial </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">partial </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">F8</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">PUSHD</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">POPD</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /P</span> command) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/4DOS" title="4DOS">4DOS</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-doskey_4dos_42-0" class="reference"><a href="#cite_note-doskey_4dos-42"><span class="cite-bracket">[</span>nb 12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-drdos_4dos_43-0" class="reference"><a href="#cite_note-drdos_4dos-43"><span class="cite-bracket">[</span>nb 13<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">(via popup, extended directory searches, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CDPATH</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">PUSHD</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">POPD</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DIRHISTORY</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DIRS</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CDD</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CD -</span> commands and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@DIRSTACK[]</span> function) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INPUT</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">ESET</span> commands) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">@SELECT[]</span> function, and indirectly via a combination of <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INPUT</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SWITCH</span> commands) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/4OS2" title="4OS2">4OS2</a> </th> <td>? </td> <td>? </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Take_Command_Console" title="Take Command Console">TCC</a> (formerly 4NT) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">(via popup, extended directory searches, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CDPATH</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">PUSHD</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">POPD</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DIRHISTORY</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DIRS</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CDD</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CD -</span> commands and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@DIRSTACK[]</span> function) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INPUT</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">ESET</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /P</span> commands) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">@SELECT[]</span> function, and indirectly via a combination of <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INPUT</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SWITCH</span> commands)<sup id="cite_ref-44" class="reference"><a href="#cite_note-44"><span class="cite-bracket">[</span>nb 14<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">PowerShell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">F8</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes; via PSReadLine<sup id="cite_ref-PSReadLine_45-0" class="reference"><a href="#cite_note-PSReadLine-45"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> module (bundled in v5.0<sup id="cite_ref-46" class="reference"><a href="#cite_note-46"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup>) or in ISE<sup id="cite_ref-powershell_ise_47-0" class="reference"><a href="#cite_note-powershell_ise-47"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Third-party extension<sup id="cite_ref-48" class="reference"><a href="#cite_note-48"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-49" class="reference"><a href="#cite_note-49"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes; via PSReadLine<sup id="cite_ref-PSReadLine_45-1" class="reference"><a href="#cite_note-PSReadLine-45"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> module (bundled in v5.0) or in ISE<sup id="cite_ref-powershell_ise_47-1" class="reference"><a href="#cite_note-powershell_ise-47"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (multiple stacks; multiple location types;<sup id="cite_ref-50" class="reference"><a href="#cite_note-50"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">Push-Location</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">Pop-Location</span>) </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">Yes, in PSReadLine<sup id="cite_ref-PSReadLine_45-2" class="reference"><a href="#cite_note-PSReadLine-45"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> module </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">Yes, in ISE<sup id="cite_ref-powershell_ise_47-2" class="reference"><a href="#cite_note-powershell_ise-47"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">Yes, in ISE<sup id="cite_ref-powershell_ise_47-3" class="reference"><a href="#cite_note-powershell_ise-47"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-51" class="reference"><a href="#cite_note-51"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-52" class="reference"><a href="#cite_note-52"><span class="cite-bracket">[</span>38<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes, in ISE<sup id="cite_ref-powershell_ise_47-4" class="reference"><a href="#cite_note-powershell_ise-47"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">popup window<sup id="cite_ref-53" class="reference"><a href="#cite_note-53"><span class="cite-bracket">[</span>39<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-rio_54-0" class="reference"><a href="#cite_note-rio-54"><span class="cite-bracket">[</span>nb 15<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-rio_54-1" class="reference"><a href="#cite_note-rio-54"><span class="cite-bracket">[</span>nb 15<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-rio_54-2" class="reference"><a href="#cite_note-rio-54"><span class="cite-bracket">[</span>nb 15<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">VMS DCL</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Minimum uniqueness scheme </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Friendly_interactive_shell" class="mw-redirect" title="Friendly interactive shell">fish</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#bfd; color:black; vertical-align:middle; text-align:center;" class="table-yes2">when defined or parsable in man pages<sup id="cite_ref-fishcompletion_55-0" class="reference"><a href="#cite_note-fishcompletion-55"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-fishcompletion_55-1" class="reference"><a href="#cite_note-fishcompletion-55"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (built-in helper available<sup id="cite_ref-56" class="reference"><a href="#cite_note-56"><span class="cite-bracket">[</span>41<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-57" class="reference"><a href="#cite_note-57"><span class="cite-bracket">[</span>nb 16<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes, using <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">abbr</span> command </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">(via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fish_config</span> command<sup id="cite_ref-58" class="reference"><a href="#cite_note-58"><span class="cite-bracket">[</span>42<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>Shell </th> <th><a href="#Completions">Command<br />name<br />completion</a> </th> <th><a href="#Completions">Path<br />completion</a> </th> <th><a href="#Completions">Command<br />argument<br />completion</a> </th> <th><a href="#Completions">Wildcard<br />completion</a> </th> <th><a href="#Command_history">Command<br />history</a> </th> <th><a href="#Mandatory_argument_prompt">Mandatory<br />argument<br />prompt</a> </th> <th><a href="#Automatic_suggestions">Automatic<br />suggestions</a> </th> <th><a href="#Colored_directory_listings">Colored<br />directory<br />listings</a> </th> <th><a href="#Text_highlighting">Text<br />highlighting</a> </th> <th><a href="#Syntax_highlighting">Syntax<br />highlighting</a> </th> <th><a href="#Directory_history,_stack_or_similar_features">Directory history, stack or similar features</a> </th> <th><a href="#Implicit_directory_change">Implicit<br />directory<br />change</a> </th> <th><a href="#Autocorrection">Auto­correction</a> </th> <th><a href="#Integrated_environment">Integrated<br />environment</a> </th> <th><a href="#Snippets">Snippets</a> </th> <th><a href="#Value_prompt">Value<br />prompt</a> </th> <th><a href="#Menu/options_selector">Menu/options<br />prompt</a> </th> <th><a href="#Progress_indicator">Progress<br />indicator</a> </th> <th><a href="#Context_sensitive_help">Context<br />sensitive<br />help</a> </th></tr></tbody></table> <div class="mw-heading mw-heading3"><h3 id="Background_execution">Background execution</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=3" title="Edit section: Background execution"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Background execution allows a shell to run a command without user interaction in the terminal, freeing the command line for additional work with the shell. POSIX shells and other Unix shells allow background execution by using the <i>&</i> character at the end of command. In <a href="/wiki/PowerShell" title="PowerShell">PowerShell</a>, the <code>Start-Process</code><sup id="cite_ref-59" class="reference"><a href="#cite_note-59"><span class="cite-bracket">[</span>43<span class="cite-bracket">]</span></a></sup> or <code>Start-Job</code><sup id="cite_ref-60" class="reference"><a href="#cite_note-60"><span class="cite-bracket">[</span>44<span class="cite-bracket">]</span></a></sup> cmdlets can be used. </p> <div class="mw-heading mw-heading3"><h3 id="Completions">Completions</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=4" title="Edit section: Completions"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Command-line_completion" title="Command-line completion">Command-line completion</a></div> <figure class="mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/File:Command-line-completion-example.gif" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/a/ad/Command-line-completion-example.gif" decoding="async" width="402" height="87" class="mw-file-element" data-file-width="402" data-file-height="87" /></a><figcaption>Command-line completion in <a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">Bash</a>.</figcaption></figure><p>Completion features assist the user in typing commands at the command line, by looking for and suggesting matching words for incomplete ones. Completion is generally requested by pressing the completion key (often the <style data-mw-deduplicate="TemplateStyles:r1249182868">.mw-parser-output .keyboard-key{border:1px solid #aaa;border-radius:0.2em;box-shadow:0.1em 0.1em 0.2em rgba(0,0,0,0.1);background-color:var(--background-color-neutral-subtle,#f8f9fa);background-image:linear-gradient(to bottom,var(--background-color-neutral,#eaecf0),var(--background-color-neutral-subtle,#f8f9fa),var(--background-color-neutral,#eaecf0));color:var(--color-base,#202122);padding:0.1em 0.3em;font-family:inherit;font-size:0.85em}</style><kbd class="keyboard-key nowrap">Tab ↹</kbd> key). </p><p><i>Command name completion</i> is the completion of the name of a command. In most shells, a command can be a program in the command path (usually <code>$PATH</code>), a builtin command, a function or alias. </p><p><i>Path completion</i> is the completion of the path to a file, relative or absolute. </p><p><i>Wildcard completion</i> is a generalization of path completion, where an expression matches any number of files, using any supported syntax for <a href="#String_processing_and_filename_matching">file matching</a>. </p><p><i>Variable completion</i> is the completion of the name of a variable name (<a href="/wiki/Environment_variable" title="Environment variable">environment variable</a> or shell variable). Bash, zsh, and fish have completion for all variable names. PowerShell has completions for environment variable names, shell variable names and — from within user-defined functions — parameter names. </p><p><i>Command argument completion</i> is the completion of a specific command's arguments. There are two types of arguments, <a href="/wiki/Named_parameter" title="Named parameter">named</a> and positional: Named arguments, often called <i>options</i>, are identified by their name or letter preceding a value, whereas positional arguments consist only of the value. Some shells allow completion of argument names, but few support completing values. </p><p>Bash, zsh and fish offer parameter name completion through a definition external to the command, distributed in a separate completion definition file. For command parameter name/value completions, these shells assume path/filename completion if no completion is defined for the command. Completion can be set up to suggest completions by calling a shell function.<sup id="cite_ref-61" class="reference"><a href="#cite_note-61"><span class="cite-bracket">[</span>45<span class="cite-bracket">]</span></a></sup> The fish shell additionally supports parsing of <a href="/wiki/Man_page" title="Man page">man pages</a> to extract parameter information that can be used to improve completions/suggestions. In PowerShell, all types of commands (cmdlets, functions, script files) inherently expose data about the names, types and valid value ranges/lists for each argument. This metadata is used by PowerShell to automatically support argument name and value completion for built-in commands/functions, user-defined commands/functions as well as for script files. Individual cmdlets can also define dynamic completion of argument values where the completion values are computed dynamically on the running system. </p> <div class="mw-heading mw-heading3"><h3 id="Command_history">Command history</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=5" title="Edit section: Command history"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Command_history" title="Command history">Command history</a></div> <p>Users of a shell may find themselves typing something similar to what they have typed before. Support for <i>command history</i> means that a user can recall a previous command into the command-line editor and edit it before issuing the potentially modified command. </p><p>Shells that support completion may also be able to directly complete the command from the command history given a partial/initial part of the previous command. </p><p>Most modern shells support command history. Shells which support command history in general also support completion from history rather than just recalling commands from the history. In addition to the plain command text, PowerShell also records execution start- and end time and execution status in the command history. </p> <div class="mw-heading mw-heading3"><h3 id="Mandatory_argument_prompt">Mandatory argument prompt</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=6" title="Edit section: Mandatory argument prompt"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Further information: <a href="/wiki/Named_parameter#Optional_parameters" title="Named parameter">Named parameter § Optional parameters</a></div> <p>Mandatory arguments/parameters are arguments/parameters which must be assigned a value upon invocation of the command, function or script file. A shell that can determine ahead of invocation that there are missing mandatory values, can assist the interactive user by prompting for those values instead of letting the command fail. Having the shell prompt for missing values will allow the author of a script, command or function to mark a parameter as mandatory instead of creating script code to either prompt for the missing values (after determining that it is being run interactively) or fail with a message. </p><p>PowerShell allows commands, functions and scripts to define arguments/parameters as <i>mandatory</i>. The shell determines prior to invocation if there is any mandatory arguments/parameters which have not been bound, and will then prompt the user for the value(s) before actual invocation. <sup id="cite_ref-ps-mandatoryparameter_62-0" class="reference"><a href="#cite_note-ps-mandatoryparameter-62"><span class="cite-bracket">[</span>46<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Automatic_suggestions">Automatic suggestions</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=7" title="Edit section: Automatic suggestions"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Autocomplete" title="Autocomplete">Autocomplete</a></div> <figure class="mw-default-size mw-halign-right" typeof="mw:File/Thumb"><a href="/wiki/File:Powershell_Intellisense_example_for_the_Get-Process_cmdlet.gif" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/4/4f/Powershell_Intellisense_example_for_the_Get-Process_cmdlet.gif/440px-Powershell_Intellisense_example_for_the_Get-Process_cmdlet.gif" decoding="async" width="440" height="120" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/4/4f/Powershell_Intellisense_example_for_the_Get-Process_cmdlet.gif 1.5x" data-file-width="514" data-file-height="140" /></a><figcaption>Command-line completion in <a href="/wiki/PowerShell" title="PowerShell">PowerShell</a>.</figcaption></figure><p>Shells featuring automatic suggestions display optional command-line completions as the user types. The <a href="/wiki/PowerShell" title="PowerShell">PowerShell</a> and <a href="/wiki/Fish_(Unix_shell)" title="Fish (Unix shell)">fish</a> shells natively support this feature; pressing the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1249182868"><kbd class="keyboard-key nowrap">Tab ↹</kbd> key inserts the completion. </p><p>Implementations of this feature can differ between shells; for example, PowerShell<sup id="cite_ref-63" class="reference"><a href="#cite_note-63"><span class="cite-bracket">[</span>47<span class="cite-bracket">]</span></a></sup> and <a href="/wiki/Z_shell" title="Z shell">zsh</a><sup id="cite_ref-64" class="reference"><a href="#cite_note-64"><span class="cite-bracket">[</span>48<span class="cite-bracket">]</span></a></sup> use an external module to provide completions, and fish derives its completions from the user's command history.<sup id="cite_ref-65" class="reference"><a href="#cite_note-65"><span class="cite-bracket">[</span>49<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Directory_history,_stack_or_similar_features"><span id="Directory_history.2C_stack_or_similar_features"></span>Directory history, stack or similar features</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=8" title="Edit section: Directory history, stack or similar features"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Further information: <a href="/wiki/Pushd_and_popd" title="Pushd and popd">pushd and popd</a></div> <p>Shells may record a history of directories the user has been in and allow for fast switching to any recorded location. This is referred to as a "directory stack". The concept had been realized as early as 1978<sup id="cite_ref-66" class="reference"><a href="#cite_note-66"><span class="cite-bracket">[</span>50<span class="cite-bracket">]</span></a></sup> in the release of <a href="/wiki/C_shell" title="C shell">the C shell</a> (csh). </p><p>PowerShell allows multiple named stacks to be used. Locations (directories) can be pushed onto/popped from the current stack or a named stack. Any stack can become the current (default) stack. Unlike most other shells, PowerShell's <i>location</i> concept allow location stacks to hold file system locations as well as other location types like e.g. <a href="/wiki/Active_Directory" title="Active Directory">Active Directory</a> organizational units/groups, <a href="/wiki/Database_server" title="Database server">SQL Server</a> databases/tables/objects, <a href="/wiki/Internet_Information_Server" class="mw-redirect" title="Internet Information Server">Internet Information Server</a> applications/sites/virtual directories. </p><p>Command line interpreters <a href="/wiki/4DOS" title="4DOS">4DOS</a> and its graphical successor <a href="/wiki/Take_Command_Console" title="Take Command Console">Take Command Console</a> also feature a directory stack. </p> <div class="mw-heading mw-heading3"><h3 id="Implicit_directory_change">Implicit directory change</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=9" title="Edit section: Implicit directory change"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>A directory name can be used directly as a command which implicitly changes the current location to the directory. </p><p>This must be distinguished from an unrelated <a href="/wiki/Load_drive" class="mw-redirect" title="Load drive">load drive</a> feature supported by <a href="/wiki/Concurrent_DOS" class="mw-redirect" title="Concurrent DOS">Concurrent DOS</a>, <a href="/wiki/Multiuser_DOS" title="Multiuser DOS">Multiuser DOS</a>, <a href="/wiki/Datapac_System_Manager" class="mw-redirect" title="Datapac System Manager">System Manager</a> and <a href="/wiki/REAL/32" class="mw-redirect" title="REAL/32">REAL/32</a>, where the drive letter L: will be implicitly updated to point to the load path of a loaded application, thereby allowing applications to refer to files residing in their load directory under a standardized drive letter instead of under an absolute path.<sup id="cite_ref-DRI_1987_CDOS_User_67-0" class="reference"><a href="#cite_note-DRI_1987_CDOS_User-67"><span class="cite-bracket">[</span>51<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Autocorrection">Autocorrection</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=10" title="Edit section: Autocorrection"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <figure class="mw-default-size" typeof="mw:File/Thumb"><a href="/wiki/File:Zsh_autocompletion_and_autocorrection_demo.gif" class="mw-file-description"><img src="//upload.wikimedia.org/wikipedia/commons/thumb/2/27/Zsh_autocompletion_and_autocorrection_demo.gif/440px-Zsh_autocompletion_and_autocorrection_demo.gif" decoding="async" width="440" height="156" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/2/27/Zsh_autocompletion_and_autocorrection_demo.gif 1.5x" data-file-width="517" data-file-height="183" /></a><figcaption>Zsh autocompletion and autocorrection demo for a <a href="/wiki/Telnet" title="Telnet">telnet</a> program.</figcaption></figure> <p>When a command line does not match a command or arguments directly, spell checking can automatically correct common typing mistakes (such as <a href="/wiki/Case_sensitivity" title="Case sensitivity">case sensitivity</a>, missing letters). There are two approaches to this; the shell can either suggest probable corrections upon command invocation, or this can happen earlier as part of a completion or autosuggestion. </p><p>The <a href="/wiki/Tcsh" title="Tcsh">tcsh</a> and <a href="/wiki/Zsh" class="mw-redirect" title="Zsh">zsh</a> shells feature optional spell checking/correction, upon command invocation. </p><p>Fish does the autocorrection upon completion and autosuggestion. The feature is therefore not in the way when typing out the whole command and pressing enter, whereas extensive use of the tab and right-arrow keys makes the shell mostly case insensitive. </p><p>The PSReadLine<sup id="cite_ref-PSReadLine_45-3" class="reference"><a href="#cite_note-PSReadLine-45"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> PowerShell module (which is shipped with version 5.0) provides the option to specify a CommandValidationHandler ScriptBlock which runs before submitting the command. This allows for custom correcting of commonly mistyped commands, and verification before actually running the command. </p> <div class="mw-heading mw-heading3"><h3 id="Progress_indicator">Progress indicator</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=11" title="Edit section: Progress indicator"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>A shell script (or job) can report progress of long running tasks to the interactive user. </p><p>Unix/Linux systems may offer other tools support using progress indicators from scripts or as standalone-commands, such as the program "pv".<sup id="cite_ref-68" class="reference"><a href="#cite_note-68"><span class="cite-bracket">[</span>52<span class="cite-bracket">]</span></a></sup> These are not integrated features of the shells, however. </p><p>PowerShell has a built-in command and API functions (to be used when authoring commands) for writing/updating a progress bar. Progress bar messages are sent separates from regular command output and the progress bar is always displayed at the ultimate interactive users console regardless of whether the progress messages originates from an interactive script, from a background job or from a remote session. </p> <div class="mw-heading mw-heading3"><h3 id="Colored_directory_listings">Colored directory listings</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=12" title="Edit section: Colored directory listings"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p><a href="/wiki/JP_Software" class="mw-redirect" title="JP Software">JP Software</a> command-line processors provide user-configurable colorization of file and directory names in directory listings based on their file extension and/or attributes through an optionally defined <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%COLORDIR%</code> environment variable. </p><p>For the Unix/Linux shells, this is a feature of the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">ls</span> command and the terminal. </p> <div class="mw-heading mw-heading3"><h3 id="Text_highlighting">Text highlighting</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=13" title="Edit section: Text highlighting"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>The command line processors in <a href="/wiki/DOS_Plus" title="DOS Plus">DOS Plus</a>, <a href="/wiki/Multiuser_DOS" title="Multiuser DOS">Multiuser DOS</a>, <a href="/wiki/REAL/32" class="mw-redirect" title="REAL/32">REAL/32</a> and in all versions of <a href="/wiki/DR-DOS" title="DR-DOS">DR-DOS</a> support a number of optional environment variables to define escape sequences allowing to control text highlighting, reversion or colorization for display or print purposes in commands like <a href="/wiki/TYPE_(DOS_command)" title="TYPE (DOS command)">TYPE</a>. All mentioned command line processors support <code><a href="/wiki/%25$ON%25" class="mw-redirect" title="%$ON%">%$ON%</a></code> and <code><a href="/wiki/%25$OFF%25" class="mw-redirect" title="%$OFF%">%$OFF%</a></code>. If defined, these sequences will be emitted before and after filenames. A typical sequence for <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%$ON%</code> would be <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\033[1m</code> in conjunction with <a href="/wiki/ANSI.SYS" title="ANSI.SYS">ANSI.SYS</a>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\033p</code> for an <a href="/wiki/ASCII" title="ASCII">ASCII</a> terminal or <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\016</code> for an IBM or <a href="/wiki/ESC/P" title="ESC/P">ESC/P</a> printer. Likewise, typical sequences for <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">%$OFF%</code> would be <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\033[0m</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\033q</code>, <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">\024</code>, respectively. The variables <code><a href="/wiki/%25$HEADER%25" class="mw-redirect" title="%$HEADER%">%$HEADER%</a></code> and <code><a href="/wiki/%25$FOOTER%25" class="mw-redirect" title="%$FOOTER%">%$FOOTER%</a></code> are only supported by COMMAND.COM in DR-DOS 7.02 and higher to define sequences emitted before and after text blocks in order to control text highlighting, pagination or other formatting options. </p><p>For the Unix/Linux shells, this is a feature of the terminal. </p> <div class="mw-heading mw-heading3"><h3 id="Syntax_highlighting">Syntax highlighting</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=14" title="Edit section: Syntax highlighting"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Syntax_highlighting" title="Syntax highlighting">Syntax highlighting</a></div> <p>A defining feature of the fish shell is built-in syntax highlighting, As the user types, text is colored to represent whether the input is a valid command or not (the executable exists and the user has permissions to run it), and valid file paths are underlined.<sup id="cite_ref-69" class="reference"><a href="#cite_note-69"><span class="cite-bracket">[</span>53<span class="cite-bracket">]</span></a></sup> </p><p>An independent project offers syntax highlighting as an add-on to the Z Shell (zsh).<sup id="cite_ref-70" class="reference"><a href="#cite_note-70"><span class="cite-bracket">[</span>54<span class="cite-bracket">]</span></a></sup> This is not part of the shell, however. </p><p>PowerShell provides customizable syntax highlighting on the command line through the PSReadLine<sup id="cite_ref-PSReadLine_45-4" class="reference"><a href="#cite_note-PSReadLine-45"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> module. This module can be used with PowerShell v3.0+, and is bundled with v5.0 onwards. It is loaded by default in the command line host "powershell.exe" since v5.0.<sup id="cite_ref-71" class="reference"><a href="#cite_note-71"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> </p><p>Take Command Console (TCC) offers syntax highlighting in the integrated environment. </p> <div class="mw-heading mw-heading3"><h3 id="Context_sensitive_help">Context sensitive help</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=15" title="Edit section: Context sensitive help"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1236090951"><div role="note" class="hatnote navigation-not-searchable">Main article: <a href="/wiki/Context-sensitive_help" title="Context-sensitive help">Context-sensitive help</a></div> <p>4DOS, 4OS2, 4NT / Take Command Console and PowerShell (in PowerShell ISE) looks up context-sensitive help information when <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1249182868"><kbd class="keyboard-key nowrap">F1</kbd> is pressed. </p><p>Zsh provides various forms of configurable context-sensitive help as part of its <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">run-help</span> widget, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">_complete_help</span> command, or in the completion of options for some commands. </p><p>The fish shell provides brief descriptions of a command's flags during tab completion. </p> <div class="mw-heading mw-heading2"><h2 id="Programming_features">Programming features</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=16" title="Edit section: Programming features"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <table class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller;"> <tbody><tr> <th>Shell </th> <th><a href="/wiki/Subroutine" class="mw-redirect" title="Subroutine">Functions</a> </th> <th><a href="/wiki/Exception_handling" title="Exception handling">Exception handling</a> </th> <th>Search & replace on variable substi­tutions </th> <th><a href="/wiki/Arithmetic" title="Arithmetic">Arith­metic</a> </th> <th><a href="/wiki/Floating_point" class="mw-redirect" title="Floating point">Floating point</a> </th> <th>Math function library </th> <th><a href="/wiki/Array_data_type" class="mw-redirect" title="Array data type">Linear arrays</a> or <a href="/wiki/List_(abstract_data_type)" title="List (abstract data type)">lists</a> </th> <th><a href="/wiki/Associative_array" title="Associative array">Assoc­iative arrays</a> </th> <th><a href="/wiki/Lambda_calculus" title="Lambda calculus">Lambda functions</a> </th> <th><a href="/wiki/Eval" title="Eval">eval func­tion</a> </th> <th><a href="/wiki/Pseudorandom_number_generator" title="Pseudorandom number generator">Pseudo­random number generation</a> </th> <th><a href="/wiki/Bytecode" title="Bytecode">Bytecode</a> </th></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> 1977 version </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> current version </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes since SVR2 </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-ReferenceB_33-2" class="reference"><a href="#cite_note-ReferenceB-33"><span class="cite-bracket">[</span>nb 8<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/POSIX" title="POSIX">POSIX</a> shell </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> (v4.0) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">${//</span>} syntax) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$RANDOM</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/C_shell" title="C shell">csh</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$var:s///</span> syntax) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Tcsh" title="Tcsh">tcsh</a> </th> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Work in progress<sup id="cite_ref-72" class="reference"><a href="#cite_note-72"><span class="cite-bracket">[</span>56<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$var:s///</span> syntax) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton C shell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$var:s///</span> syntax) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (random utility) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Scsh" title="Scsh">Scsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via string functions and regular expressions) </td> <td>? </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (random-integer, random-real) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (compiler is Scheme48 virtual machine, via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">scshvm</span>) </td></tr> <tr> <th><a href="/wiki/Korn_Shell" class="mw-redirect" title="Korn Shell">ksh</a> (ksh93t+) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">${//</span>} syntax and builtin commands) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$RANDOM</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (compiler is called <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">shcomp</span>) </td></tr> <tr> <th><a href="/wiki/Pdksh" class="mw-redirect" title="Pdksh">pdksh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$RANDOM</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Zsh" class="mw-redirect" title="Zsh">zsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">${:s//</span>} and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">${//</span>} syntax) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">zsh/mathfunc</span> module) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$RANDOM</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (built-in <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">zcompile</span> command) </td></tr> <tr> <th><a href="/wiki/Almquist_shell" title="Almquist shell">ash</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (since 1992)<sup id="cite_ref-73" class="reference"><a href="#cite_note-73"><span class="cite-bracket">[</span>57<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/CCP_(CP/M)" class="mw-redirect" title="CCP (CP/M)">CCP</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/COMMAND.COM" title="COMMAND.COM">COMMAND.COM</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only Auto-fail (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">COMMAND /F</span> (or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/N</span> in some versions of DR-DOS)) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>OS/2 <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>Windows <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">CALL :label</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET %<i>varname</i>:<i>expression</i></span> syntax) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /A</span>)<sup id="cite_ref-74" class="reference"><a href="#cite_note-74"><span class="cite-bracket">[</span>58<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET</span><sup id="cite_ref-75" class="reference"><a href="#cite_note-75"><span class="cite-bracket">[</span>59<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%random%</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/4DOS" title="4DOS">4DOS</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">ON</span> command, optional Auto-fail via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">4DOS /F</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@Replace[...]</span> function) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /A</span>) </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via ranges, include lists, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">@</span>file lists and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR</span> command) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@Random[...]</span> function) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">BATCOMP</span> command) </td></tr> <tr> <th><a href="/wiki/4OS2" title="4OS2">4OS2</a> </th> <td>? </td> <td>? </td> <td>? </td> <td>? </td> <td>? </td> <td>? </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@Random[...]</span> function) </td> <td>? </td></tr> <tr> <th><a href="/wiki/Take_Command_Console" title="Take Command Console">TCC</a> (formerly 4NT) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">ON</span> and various <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">...MONITOR</span> commands) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@Replace[...]</span> function) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /A</span>) </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via ranges, include lists, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">@</span>file lists and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR</span> command) </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@Random[...]</span> function) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">BATCOMP</span> command) </td></tr> <tr> <th><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">PowerShell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Try-Catch-Finally) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">-replace</span> operator) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">[Math] class<sup id="cite_ref-76" class="reference"><a href="#cite_note-76"><span class="cite-bracket">[</span>60<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-77" class="reference"><a href="#cite_note-77"><span class="cite-bracket">[</span>61<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes, automatic </td></tr> <tr> <th><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td></tr> <tr> <th><a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">VMS DCL</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">yes, for compiled programs </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Friendly_interactive_shell" class="mw-redirect" title="Friendly interactive shell">fish</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">trap</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes, via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">string</span> builtin command<sup id="cite_ref-78" class="reference"><a href="#cite_note-78"><span class="cite-bracket">[</span>62<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">random</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr></tbody></table> <div class="mw-heading mw-heading2"><h2 id="String_processing_and_filename_matching">String processing and filename matching</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=17" title="Edit section: String processing and filename matching"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <table class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller;"> <tbody><tr> <th>Shell </th> <th>String processing </th> <th><a href="/wiki/Alternation_(string_expansion)" class="mw-redirect" title="Alternation (string expansion)">Alternation</a> (<a href="/wiki/Brace_expansion" class="mw-redirect" title="Brace expansion">Brace expansion</a>) </th> <th>Pattern matching (<a href="/wiki/Regular_expression" title="Regular expression">regular expressions</a> built-in) </th> <th>Pattern matching (filename <a href="/wiki/Glob_(programming)" title="Glob (programming)">globbing</a>) </th> <th>Globbing qualifiers (filename generation based on file attributes) </th> <th><a href="/wiki/Recursive_globbing" class="mw-redirect" title="Recursive globbing">Recursive globbing</a> (generating files from any level of subdirectories) </th></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> 1977 version </th> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> recent version </th> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (prefix and suffix stripping in variable expansion) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/POSIX" title="POSIX">POSIX</a> shell </th> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (prefix and suffix stripping in variable expansion) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> (v4.0) </th> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (prefix and suffix stripping in variable expansion) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">{...</span>}) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">**/...</span>) </td></tr> <tr> <th><a href="/wiki/C_shell" title="C shell">csh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (:s and other editing operators) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Tcsh" title="Tcsh">tcsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (:s and other editing operators) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton C shell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (:s and other editing operators + substr, strlen, strindex, printf, reverse, upper, lower, concat and other builtin functions) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via indefinite directory <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">"..."</span> wildcard<sup id="cite_ref-79" class="reference"><a href="#cite_note-79"><span class="cite-bracket">[</span>63<span class="cite-bracket">]</span></a></sup>) </td></tr> <tr> <th><a href="/wiki/Scsh" title="Scsh">Scsh</a> </th> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Korn_Shell" class="mw-redirect" title="Korn Shell">ksh</a> (ksh93t+) </th> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (prefix, suffix stripping and string replacement in variable expansion) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-Apress_80-0" class="reference"><a href="#cite_note-Apress-80"><span class="cite-bracket">[</span>64<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (with <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">set -G</span>, no following of symlinks) </td></tr> <tr> <th><a href="/wiki/Pdksh" class="mw-redirect" title="Pdksh">pdksh</a> </th> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-Apress_80-1" class="reference"><a href="#cite_note-Apress-80"><span class="cite-bracket">[</span>64<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Zsh" class="mw-redirect" title="Zsh">zsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (through variable processing: e.g. substring extraction, various transformations via parameter expansion) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>, <a href="/wiki/Extended_globbing" class="mw-redirect" title="Extended globbing">extended globbing</a><sup id="cite_ref-extended_globbing_81-0" class="reference"><a href="#cite_note-extended_globbing-81"><span class="cite-bracket">[</span>65<span class="cite-bracket">]</span></a></sup>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">**/...</span> or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">***/...</span> to follow symlinks) </td></tr> <tr> <th><a href="/wiki/Almquist_shell" title="Almquist shell">ash</a> </th> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/CCP_(CP/M)" class="mw-redirect" title="CCP (CP/M)">CCP</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/COMMAND.COM" title="COMMAND.COM">COMMAND.COM</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>OS/2 <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>) </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only in <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DIR /A:...</span> command) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>Windows <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only through <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /F</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /A</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No<sup id="cite_ref-82" class="reference"><a href="#cite_note-82"><span class="cite-bracket">[</span>nb 17<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>) </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only in <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">DIR /A:...</span> command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /R</span> command, or, where available, indirectly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/S</span> subdir option) </td></tr> <tr> <th><a href="/wiki/4DOS" title="4DOS">4DOS</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (through variable functions <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@...[]</span>, extended environment variable processing, various string commands and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /F</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /A</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>, <a href="/wiki/Extended_wildcards" class="mw-redirect" title="Extended wildcards">extended wildcards</a>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SELECT</span> popup command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/A:...</span> attribute and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/I"..."</span> description options and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[S...]</span> size, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[T...]</span> time, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[D...]</span> date, and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[!...]</span> file exclusion ranges) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /R</span> command, or indirectly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">GLOBAL</span> command or, where available, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/S</span> subdir option) </td></tr> <tr> <th><a href="/wiki/4OS2" title="4OS2">4OS2</a> </th> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td>? </td> <td>? </td></tr> <tr> <th><a href="/wiki/Take_Command_Console" title="Take Command Console">TCC</a> (formerly 4NT) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (through variable functions <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@...[]</span>, extended environment variable processing, various string commands and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /F</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /A</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>, <a href="/wiki/Extended_wildcards" class="mw-redirect" title="Extended wildcards">extended wildcards</a>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SELECT</span> popup command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/A:...</span> attribute and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/I"..."</span> description options and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[S...]</span> size, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[T...]</span> time, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[D...]</span> date, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[O...]</span> owner, and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/[!...]</span> file exclusion ranges) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /R</span> command, or indirectly via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">GLOBAL</span> command or, where available, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/S</span> subdir option) </td></tr> <tr> <th><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">PowerShell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Concat/Substring/Insert/Remove/Replace, ToLower/ToUpper, Trim/TrimStart/TrimEnd, Compare, Contains/StartsWith/EndWith, Format, IndexOf/LastIndexOf, Pad/PadLeft/PadRight, Split/Join, regular expression functions and other .NET string functions) </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Range operator for numbers<sup id="cite_ref-83" class="reference"><a href="#cite_note-83"><span class="cite-bracket">[</span>66<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (full regex support)<sup id="cite_ref-84" class="reference"><a href="#cite_note-84"><span class="cite-bracket">[</span>nb 18<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[...]</span>) </td> <td>? </td> <td>? </td></tr> <tr> <th><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a> </th> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a> </th> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td> <td>? </td> <td>? </td></tr> <tr> <th><a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">VMS DCL</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[SUBDIR...]</span>) </td></tr> <tr> <th><a href="/wiki/Friendly_interactive_shell" class="mw-redirect" title="Friendly interactive shell">fish</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (builtin string function) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">yes (via builtin <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">string match</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">string replace</span> functions) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">*</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">?</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">{...</span>}) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">**/...</span>) </td></tr></tbody></table> <div class="mw-heading mw-heading2"><h2 id="Inter-process_communication">Inter-process communication</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=18" title="Edit section: Inter-process communication"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <table class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller;"> <tbody><tr> <th>Shell </th> <th><a href="/wiki/Pipeline_(software)" title="Pipeline (software)">Pipes</a> </th> <th><a href="/wiki/Command_substitution" title="Command substitution">Command substitution</a> </th> <th><a href="/wiki/Process_substitution" title="Process substitution">Process substitution</a> </th> <th>Subshells </th> <th><a href="/wiki/Transmission_Control_Protocol" title="Transmission Control Protocol">TCP</a>/<a href="/wiki/User_Datagram_Protocol" title="User Datagram Protocol">UDP</a> connections as streams </th> <th><a href="#Keystroke_stacking">Keystroke stacking</a> </th></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-0" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/POSIX" title="POSIX">POSIX</a> shell </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-1" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> (v4.0) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (if system supports <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/dev/fd/<i><span class="nowrap">⟨n⟩</span></i></span> or named pipes) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (client only) </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-2" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/C_shell" title="C shell">csh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-3" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Tcsh" title="Tcsh">tcsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-4" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton C shell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td></tr> <tr> <th><a href="/wiki/Scsh" title="Scsh">Scsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text </td> <td>? </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-5" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Korn_Shell" class="mw-redirect" title="Korn Shell">ksh</a> (ksh93t+) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes (may contain serialized objects if <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">print -C</span> is used) concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">$(...)</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">${<space>...;</span>}) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (if system supports <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/dev/fd/<i><span class="nowrap">⟨n⟩</span></i></span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (and SCTP support, client only) </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-6" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Pdksh" class="mw-redirect" title="Pdksh">pdksh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-7" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Zsh" class="mw-redirect" title="Zsh">zsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (client and server, but only TCP) </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-8" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Almquist_shell" title="Almquist shell">ash</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-9" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/CCP_(CP/M)" class="mw-redirect" title="CCP (CP/M)">CCP</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/COMMAND.COM" title="COMMAND.COM">COMMAND.COM</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text sequential temporary files </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only under DR-DOS multitasker via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">COMMAND.COM /T</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>OS/2 <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text concurrent </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>Windows <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /F</span> command) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (Backtick: <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">`</span> in <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /F usebackq</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/4DOS" title="4DOS">4DOS</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text sequential temporary files </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /F</span> command) </td> <td>? </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@EXECSTR[]</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@EXEC[]</span>, or via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SET /M</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">ESET /M</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">UNSET /M</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@MASTER[...]</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">KEYSTACK</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/KSTACK.COM" class="mw-redirect" title="KSTACK.COM">KSTACK</a></span>)<sup id="cite_ref-4DOS_8.00_HELP_86-0" class="reference"><a href="#cite_note-4DOS_8.00_HELP-86"><span class="cite-bracket">[</span>67<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/4OS2" title="4OS2">4OS2</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text concurrent </td> <td>? </td> <td>? </td> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">KEYSTACK</span>) </td></tr> <tr> <th><a href="/wiki/Take_Command_Console" title="Take Command Console">TCC</a> (formerly 4NT) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FOR /F</span> command) </td> <td>? </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@EXECSTR[]</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">%@EXEC[]</span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FTP</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">TFTP</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FTPS</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">SFTP</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">HTTP</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">HTTPS</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">IFTP</span>, client only) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">KEYSTACK</span>) </td></tr> <tr> <th><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">PowerShell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">objects concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td></tr> <tr> <th><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via: <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><{cmd</span>} if system supports <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">/dev/fd/<i><span class="nowrap">⟨n⟩</span></i></span>) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td>? </td></tr> <tr> <th><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">not supported </td> <td>? </td> <td>? </td> <td>? </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td>? </td></tr> <tr> <th><a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">VMS DCL</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">text (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">PIPE</span> command) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (spawn) </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (server TCP only) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Friendly_interactive_shell" class="mw-redirect" title="Friendly interactive shell">fish</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">bytes concurrent </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">...</span>) </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No (broken)<sup id="cite_ref-87" class="reference"><a href="#cite_note-87"><span class="cite-bracket">[</span>68<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-xautomation_85-10" class="reference"><a href="#cite_note-xautomation-85"><span class="cite-bracket">[</span>nb 19<span class="cite-bracket">]</span></a></sup> </td></tr></tbody></table> <div class="mw-heading mw-heading3"><h3 id="Keystroke_stacking">Keystroke stacking</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=19" title="Edit section: Keystroke stacking"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>In anticipation of what a given running application may accept as keyboard input, the user of the shell instructs the shell to generate a sequence of <i>simulated</i> keystrokes, which the application will interpret as a keyboard input from an interactive user. By sending keystroke sequences the user may be able to direct the application to perform actions that would be impossible to achieve through input redirection or would otherwise require an interactive user. For example, if an application acts on keystrokes, which cannot be redirected, distinguishes between normal and extended keys, flushes the queue before accepting new input on startup or under certain conditions, or because it does not read through standard input at all. Keystroke stacking typically also provides means to control the timing of simulated keys being sent or to delay new keys until the queue was flushed etc. It also allows to simulate keys which are not present on a keyboard (because the corresponding keys do not physically exist or because a different keyboard layout is being used) and therefore would be impossible to type by a user. </p> <div class="mw-heading mw-heading2"><h2 id="Security_features">Security features</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=20" title="Edit section: Security features"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1251242444"><table class="box-Importance_section plainlinks metadata ambox ambox-content" role="presentation"><tbody><tr><td class="mbox-image"><div class="mbox-image-div"><span typeof="mw:File"><span><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/40px-Ambox_important.svg.png" decoding="async" width="40" height="40" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/60px-Ambox_important.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_important.svg/80px-Ambox_important.svg.png 2x" data-file-width="40" data-file-height="40" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">This section may contain information <b>not <a href="/wiki/Wikipedia:What_Wikipedia_is_not#Encyclopedic_content" title="Wikipedia:What Wikipedia is not">important or relevant</a> to the article's subject.</b><span class="hide-when-compact"> Please help <a class="external text" href="https://en.wikipedia.org/w/index.php?title=Comparison_of_command_shells&action=edit">improve this section</a>.</span> <span class="date-container"><i>(<span class="date">July 2014</span>)</i></span><span class="hide-when-compact"><i> (<small><a href="/wiki/Help:Maintenance_template_removal" title="Help:Maintenance template removal">Learn how and when to remove this message</a></small>)</i></span></div></td></tr></tbody></table> <table class="wikitable sortable" style="width: auto; text-align: center; font-size: smaller;"> <tbody><tr> <th>Shell </th> <th><a href="#Secure_prompt">Secure (password) prompt</a> </th> <th>File/directory passwords </th> <th><a href="#Execute_permission">Execute permission</a> </th> <th><a href="#Restricted_shell_subset">Restricted shell subset</a> </th> <th><a href="#Safe_data_subset">Safe data subset</a> </th></tr> <tr> <th><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne shell</a> </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-0" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-0" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/POSIX" title="POSIX">POSIX</a> shell </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-1" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-1" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">bash</a> (v4.0) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">read -s</span> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-2" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/C_shell" title="C shell">csh</a> </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-2" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-3" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Tcsh" title="Tcsh">tcsh</a> </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-3" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-4" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton C shell</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Scsh" title="Scsh">Scsh</a> </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-4" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-5" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Korn_Shell" class="mw-redirect" title="Korn Shell">ksh</a> (ksh93t+) </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-5" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-6" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Pdksh" class="mw-redirect" title="Pdksh">pdksh</a> </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-6" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-7" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Zsh" class="mw-redirect" title="Zsh">zsh</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">read -s</span> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-8" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-xperm-complete_90-0" class="reference"><a href="#cite_note-xperm-complete-90"><span class="cite-bracket">[</span>nb 22<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Almquist_shell" title="Almquist shell">ash</a> </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-7" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-9" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/CCP_(CP/M)" class="mw-redirect" title="CCP (CP/M)">CCP</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/COMMAND.COM" title="COMMAND.COM">COMMAND.COM</a> </th> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only under DR-DOS, prompts for password if file/directory is protected) </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only under DR-DOS via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">\dirname;dirpwd\filename;filepwd</span> syntax)<sup id="cite_ref-drpwd_91-0" class="reference"><a href="#cite_note-drpwd-91"><span class="cite-bracket">[</span>nb 23<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only under DR-DOS, if files are password-protected for read and/or execute permission)<sup id="cite_ref-drexec_92-0" class="reference"><a href="#cite_note-drexec-92"><span class="cite-bracket">[</span>nb 24<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>OS/2 <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th>Windows <a href="/wiki/CMD.EXE" class="mw-redirect" title="CMD.EXE">CMD.EXE</a> </th> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/4DOS" title="4DOS">4DOS</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INPUT /P</span> or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY /P</span>)<sup id="cite_ref-input/p_93-0" class="reference"><a href="#cite_note-input/p-93"><span class="cite-bracket">[</span>nb 25<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only under DR-DOS via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">\dirname;;dirpwd\filename;;filepwd</span> syntax)<sup id="cite_ref-drpwd_91-1" class="reference"><a href="#cite_note-drpwd-91"><span class="cite-bracket">[</span>nb 23<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFB; color:black;vertical-align:middle;text-align:center;" class="table-partial">Partial (only under DR-DOS, if files are password-protected for read and/or execute permission)<sup id="cite_ref-drexec_92-1" class="reference"><a href="#cite_note-drexec-92"><span class="cite-bracket">[</span>nb 24<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/4OS2" title="4OS2">4OS2</a> </th> <td>? </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Take_Command_Console" title="Take Command Console">TCC</a> (formerly 4NT) </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INPUT /P</span>, <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY /P</span> or <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">QUERYBOX /P</span>)<sup id="cite_ref-input/p_93-1" class="reference"><a href="#cite_note-input/p-93"><span class="cite-bracket">[</span>nb 25<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Windows_PowerShell" class="mw-redirect" title="Windows PowerShell">PowerShell</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-94" class="reference"><a href="#cite_note-94"><span class="cite-bracket">[</span>nb 26<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No<sup id="cite_ref-95" class="reference"><a href="#cite_note-95"><span class="cite-bracket">[</span>nb 27<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-96" class="reference"><a href="#cite_note-96"><span class="cite-bracket">[</span>nb 28<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-97" class="reference"><a href="#cite_note-97"><span class="cite-bracket">[</span>69<span class="cite-bracket">]</span></a></sup> </td></tr> <tr> <th><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a> </th> <td style="background: #FFD; color:black; vertical-align: middle; text-align: center;" class="partial table-partial">via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span><sup id="cite_ref-tty_88-8" class="reference"><a href="#cite_note-tty-88"><span class="cite-bracket">[</span>nb 20<span class="cite-bracket">]</span></a></sup> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-10" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes<sup id="cite_ref-98" class="reference"><a href="#cite_note-98"><span class="cite-bracket">[</span>70<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/BeanShell" title="BeanShell">BeanShell</a> </th> <td>? </td> <td>? </td> <td>? </td> <td>? </td> <td>? </td></tr> <tr> <th><a href="/wiki/DIGITAL_Command_Language" title="DIGITAL Command Language">VMS DCL</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes </td> <td style="background:#FFC7C7;color:black;vertical-align:middle;text-align:center;" class="table-no">No </td></tr> <tr> <th><a href="/wiki/Friendly_interactive_shell" class="mw-redirect" title="Friendly interactive shell">fish</a> </th> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">read -s</span> </td> <td>? </td> <td data-sort-value="" style="background: var(--background-color-interactive, #ececec); color: var(--color-base, inherit); vertical-align: middle; text-align: center;" class="table-na">N/A<sup id="cite_ref-hashbang_89-11" class="reference"><a href="#cite_note-hashbang-89"><span class="cite-bracket">[</span>nb 21<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-xperm-complete_90-1" class="reference"><a href="#cite_note-xperm-complete-90"><span class="cite-bracket">[</span>nb 22<span class="cite-bracket">]</span></a></sup> </td> <td style="background:#9EFF9E;color:black;vertical-align:middle;text-align:center;" class="table-yes">Yes (via <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">fish -l</span>) </td> <td>? </td></tr></tbody></table> <div class="mw-heading mw-heading3"><h3 id="Secure_prompt">Secure prompt</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=21" title="Edit section: Secure prompt"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Some shell scripts need to query the user for sensitive information such as <a href="/wiki/Password" title="Password">passwords</a>, private digital keys, <a href="/wiki/Personal_Identification_Number" class="mw-redirect" title="Personal Identification Number">PIN codes</a> or other confidential information. Sensitive input should not be echoed back to the screen/input device where it could be gleaned by unauthorized persons. Plaintext memory representation of sensitive information should also be avoided as it could allow the information to be compromised, e.g., through swap files, core dumps etc.<sup id="cite_ref-encryptmemory_99-0" class="reference"><a href="#cite_note-encryptmemory-99"><span class="cite-bracket">[</span>71<span class="cite-bracket">]</span></a></sup> </p><p>The shells bash, zsh and PowerShell offer this as a specific feature.<sup id="cite_ref-100" class="reference"><a href="#cite_note-100"><span class="cite-bracket">[</span>72<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-101" class="reference"><a href="#cite_note-101"><span class="cite-bracket">[</span>73<span class="cite-bracket">]</span></a></sup> Shells which do not offer this as a specific feature may still be able to turn off echoing through some other means. Shells executing on a Unix/Linux operating system can use the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/Stty" class="mw-redirect" title="Stty">stty</a></span> external command to switch off/on echoing of input characters.<sup id="cite_ref-102" class="reference"><a href="#cite_note-102"><span class="cite-bracket">[</span>74<span class="cite-bracket">]</span></a></sup> In addition to not echoing back the characters, PowerShell's <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">-AsSecureString</code> option also encrypts the input character-by-character during the input process, ensuring that the string is never represented unencrypted in memory where it could be compromised through memory dumps, scanning, transcription etc. </p> <div class="mw-heading mw-heading3"><h3 id="Execute_permission">Execute permission</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=22" title="Edit section: Execute permission"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Some operating systems define an <i>execute</i> permission which can be granted to users/groups for a file when the <a href="/wiki/File_system" title="File system">file system</a> itself supports it. </p><p>On Unix systems, the execute permission controls access to invoking the file as a program, and applies both to executables and scripts. As the permission is enforced in the <a href="/wiki/Loader_(computing)" title="Loader (computing)">program loader</a>, no obligation is needed from the invoking program, nor the invoked program, in enforcing the execute permission –  this also goes for shells and other interpreter programs. The behaviour is mandated by the <a href="/wiki/C_POSIX_library" title="C POSIX library">POSIX C library</a> that is used for interfacing with the kernel. POSIX specifies that the <code>exec</code> family of functions shall fail with EACCESS (permission denied) if the file denies execution permission (see <span class="plainlinksneverexpand"><code><a rel="nofollow" class="external text" href="https://pubs.opengroup.org/onlinepubs/9799919799/functions/execve.html">execve</a></code></span> – System Interfaces Reference, <a href="/wiki/Single_Unix_Specification" class="mw-redirect" title="Single Unix Specification">The Single UNIX Specification</a>, Version 4 from <a href="/wiki/The_Open_Group" title="The Open Group">The Open Group</a>). </p><p>The <i>execute</i> permission only applies when the script is run directly. If a script is invoked as an argument to the interpreting shell, it will be executed regardless of whether the user holds the <i>execute</i> permission for that script. </p><p>Although Windows also specifies an <i>execute</i> permission, none of the Windows-specific shells block script execution if the permission has not been granted. </p> <div class="mw-heading mw-heading3"><h3 id="Restricted_shell_subset">Restricted shell subset</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=23" title="Edit section: Restricted shell subset"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Several shells can be started or be configured to start in a mode where only a limited set of commands and actions is available to the user. While not a security <i>boundary</i> (the command accessing a resource is blocked rather than the resource) this is nevertheless typically used to restrict users' actions before logging in. </p><p>A restricted mode is part of the <a href="/wiki/POSIX" title="POSIX">POSIX</a> specification for shells, and most of the Linux/Unix shells support such a mode where several of the built-in commands are disabled and only external commands from a certain directory can be invoked.<sup id="cite_ref-103" class="reference"><a href="#cite_note-103"><span class="cite-bracket">[</span>75<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-104" class="reference"><a href="#cite_note-104"><span class="cite-bracket">[</span>76<span class="cite-bracket">]</span></a></sup> </p><p>PowerShell supports restricted modes through <i>session configuration files</i> or session configurations. A session configuration file can define visible (available) cmdlets, aliases, functions, path providers and more.<sup id="cite_ref-105" class="reference"><a href="#cite_note-105"><span class="cite-bracket">[</span>77<span class="cite-bracket">]</span></a></sup> </p> <div class="mw-heading mw-heading3"><h3 id="Safe_data_subset">Safe data subset</h3><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=24" title="Edit section: Safe data subset"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <p>Scripts that invoke other scripts can be a security risk as they can potentially execute foreign code in the context of the user who launched the initial script. Scripts will usually be designed to exclusively include scripts from known safe locations; but in some instances, e.g. when offering the user a way to configure the environment or loading localized messages, the script may need to include other scripts/files.<sup id="cite_ref-106" class="reference"><a href="#cite_note-106"><span class="cite-bracket">[</span>78<span class="cite-bracket">]</span></a></sup> One way to address this risk is for the shell to offer a safe subset of commands which can be executed by an included script. </p><p>PowerShell <a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh848302.aspx">data sections</a> can contain constants and expressions using a restricted subset of operators and commands.<sup id="cite_ref-107" class="reference"><a href="#cite_note-107"><span class="cite-bracket">[</span>79<span class="cite-bracket">]</span></a></sup> PowerShell data sections are used when e.g. localized strings needs to be read from an external source while protecting against unwanted side effects. </p> <div class="mw-heading mw-heading2"><h2 id="Notes">Notes</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=25" title="Edit section: Notes"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <style data-mw-deduplicate="TemplateStyles:r1239543626">.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}</style><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text">Since mid 1990s.</span> </li> <li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text">if compiled with -DACCT.</span> </li> <li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text">MS-DOS and Windows component – covered by a valid license for MS-DOS or Microsoft Windows.</span> </li> <li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text">OS/2 component – covered by a valid license for OS/2.</span> </li> <li id="cite_note-cmd_/x-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-cmd_/x_26-0">^</a></b></span> <span class="reference-text">Command extensions enabled, or "CMD /X".</span> </li> <li id="cite_note-ReferenceA-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-ReferenceA_27-0">^</a></b></span> <span class="reference-text">Windows component – covered by a valid license for Microsoft Windows.</span> </li> <li id="cite_note-optional-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-optional_29-0">^</a></b></span> <span class="reference-text">Microsoft PowerShell is installed by default on Windows 7 and later. It is an optional download for users of Windows Vista or Windows XP.</span> </li> <li id="cite_note-ReferenceB-33"><span class="mw-cite-backlink">^ <a href="#cite_ref-ReferenceB_33-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-ReferenceB_33-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-ReferenceB_33-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text">current versions from Jörg Schilling.</span> </li> <li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text">Alt-Shift-8 or Alt-* will expand to the full matching list of filenames.</span> </li> <li id="cite_note-doskey-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-doskey_39-0">^</a></b></span> <span class="reference-text">Available through the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/DOSKEY" title="DOSKEY">DOSKEY</a></span> add-on.</span> </li> <li id="cite_note-drdos-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-drdos_40-0">^</a></b></span> <span class="reference-text">Available in DR-DOS through <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/HISTORY_(CONFIG.SYS_directive)" class="mw-redirect" title="HISTORY (CONFIG.SYS directive)">HISTORY</a></span>.</span> </li> <li id="cite_note-doskey_4dos-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-doskey_4dos_42-0">^</a></b></span> <span class="reference-text">Alternatively available through the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/DOSKEY" title="DOSKEY">DOSKEY</a></span> add-on as well.</span> </li> <li id="cite_note-drdos_4dos-43"><span class="mw-cite-backlink"><b><a href="#cite_ref-drdos_4dos_43-0">^</a></b></span> <span class="reference-text">Alternatively available in DR-DOS through <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/HISTORY_(CONFIG.SYS_directive)" class="mw-redirect" title="HISTORY (CONFIG.SYS directive)">HISTORY</a></span> as well.</span> </li> <li id="cite_note-44"><span class="mw-cite-backlink"><b><a href="#cite_ref-44">^</a></b></span> <span class="reference-text">TCC has special prompt functions for Yes, No, Cancel, Close, Retry.</span> </li> <li id="cite_note-rio-54"><span class="mw-cite-backlink">^ <a href="#cite_ref-rio_54-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-rio_54-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-rio_54-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text">Handled by <a href="/wiki/Rio_(program)" class="mw-redirect" title="Rio (program)">rio</a>, <a href="/wiki/GNU_readline" class="mw-redirect" title="GNU readline">GNU readline</a>, <a href="/w/index.php?title=Editline&action=edit&redlink=1" class="new" title="Editline (page does not exist)">editline</a> or <a href="/w/index.php?title=Vrl&action=edit&redlink=1" class="new" title="Vrl (page does not exist)">vrl</a>.</span> </li> <li id="cite_note-57"><span class="mw-cite-backlink"><b><a href="#cite_ref-57">^</a></b></span> <span class="reference-text">The fish shell is an interactive character based input/output surface.</span> </li> <li id="cite_note-82"><span class="mw-cite-backlink"><b><a href="#cite_ref-82">^</a></b></span> <span class="reference-text">Not available as a shell built-in. External <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">FINDSTR /R</span> command is available in most Windows releases.</span> </li> <li id="cite_note-84"><span class="mw-cite-backlink"><b><a href="#cite_ref-84">^</a></b></span> <span class="reference-text">PowerShell leverages the full <a href="/wiki/.NET_Framework" title=".NET Framework">.NET</a> regular expression engine which features named captures, zero-width lookahead/-behind, greedy/non-greedy, character classes, level counting etc.</span> </li> <li id="cite_note-xautomation-85"><span class="mw-cite-backlink">^ <a href="#cite_ref-xautomation_85-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-xautomation_85-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-xautomation_85-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-xautomation_85-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-xautomation_85-4"><sup><i><b>e</b></i></sup></a> <a href="#cite_ref-xautomation_85-5"><sup><i><b>f</b></i></sup></a> <a href="#cite_ref-xautomation_85-6"><sup><i><b>g</b></i></sup></a> <a href="#cite_ref-xautomation_85-7"><sup><i><b>h</b></i></sup></a> <a href="#cite_ref-xautomation_85-8"><sup><i><b>i</b></i></sup></a> <a href="#cite_ref-xautomation_85-9"><sup><i><b>j</b></i></sup></a> <a href="#cite_ref-xautomation_85-10"><sup><i><b>k</b></i></sup></a></span> <span class="reference-text">xautomation and xdotool can be used to generate keystrokes under <a href="/wiki/X_Window_System" title="X Window System">X Window System</a>; or a program can be run in a <a href="/wiki/Pseudoterminal" title="Pseudoterminal">pseudoterminal</a> to be able to control it (as with the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced"><a href="/wiki/Expect" title="Expect">expect</a></span> tool).</span> </li> <li id="cite_note-tty-88"><span class="mw-cite-backlink">^ <a href="#cite_ref-tty_88-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-tty_88-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-tty_88-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-tty_88-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-tty_88-4"><sup><i><b>e</b></i></sup></a> <a href="#cite_ref-tty_88-5"><sup><i><b>f</b></i></sup></a> <a href="#cite_ref-tty_88-6"><sup><i><b>g</b></i></sup></a> <a href="#cite_ref-tty_88-7"><sup><i><b>h</b></i></sup></a> <a href="#cite_ref-tty_88-8"><sup><i><b>i</b></i></sup></a></span> <span class="reference-text">The shell can use the <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">stty</span> utility to suppress echoing of typed characters to the screen. This requires multiple steps: 1. reading the current echo state, 2. switching echo off, 3. reading the input, 4. switching echo state back to the original state.</span> </li> <li id="cite_note-hashbang-89"><span class="mw-cite-backlink">^ <a href="#cite_ref-hashbang_89-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-hashbang_89-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-hashbang_89-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-hashbang_89-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-hashbang_89-4"><sup><i><b>e</b></i></sup></a> <a href="#cite_ref-hashbang_89-5"><sup><i><b>f</b></i></sup></a> <a href="#cite_ref-hashbang_89-6"><sup><i><b>g</b></i></sup></a> <a href="#cite_ref-hashbang_89-7"><sup><i><b>h</b></i></sup></a> <a href="#cite_ref-hashbang_89-8"><sup><i><b>i</b></i></sup></a> <a href="#cite_ref-hashbang_89-9"><sup><i><b>j</b></i></sup></a> <a href="#cite_ref-hashbang_89-10"><sup><i><b>k</b></i></sup></a> <a href="#cite_ref-hashbang_89-11"><sup><i><b>l</b></i></sup></a></span> <span class="reference-text">The <i>execute permission</i> is enforced by a separate program, the program loader, by refusing to invoke the interpreter (possibly a shell) specified by the script's <a href="/wiki/Hashbang" class="mw-redirect" title="Hashbang">hashbang</a>. The interpreter does not enforce the execute permission if invoked directly as the program loader would, with the file as an argument; this only requires read permission, as does piping the file as input to the interpreter, in which case the interpreter cannot see the execute permission.</span> </li> <li id="cite_note-xperm-complete-90"><span class="mw-cite-backlink">^ <a href="#cite_ref-xperm-complete_90-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-xperm-complete_90-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">The zsh and fish shells also honor the <i>execute permission</i> for command completion.</span> </li> <li id="cite_note-drpwd-91"><span class="mw-cite-backlink">^ <a href="#cite_ref-drpwd_91-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-drpwd_91-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">Under DR-DOS the password separator for file and directory passwords is a semicolon. This is also supported under 4DOS for as long as the command does not support include lists. Under 4DOS, the password separator must be doubled for all commands supporting include lists in order to distinguish passwords from include lists. Commands not supporting include lists accept both forms. DR-DOS 7.02 and higher optionally accept a doubled semicolon as well, so that doubled semicolons work under both COMMAND.COM and 4DOS regardless of the command executed.</span> </li> <li id="cite_note-drexec-92"><span class="mw-cite-backlink">^ <a href="#cite_ref-drexec_92-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-drexec_92-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text">DR-DOS supports file passwords for read/write/delete and optionally execute permissions. Files are not protected by default, but the system can be set up so that f.e. batch scripts require a password to read.</span> </li> <li id="cite_note-input/p-93"><span class="mw-cite-backlink">^ <a href="#cite_ref-input/p_93-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-input/p_93-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INPUT /P</span> and <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">INKEY /P</span> echoes back asterisks for each typed character.</span> </li> <li id="cite_note-94"><span class="mw-cite-backlink"><b><a href="#cite_ref-94">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">Read-Host -AsSecureString</span> reads a string of characters from the input device into an encrypted string, one character at a time thus ensuring that there is no memory image of the clear text which could be gleaned from scanning memory, or from crash dumps, memory dumps, paging files, log files or similar.</span> </li> <li id="cite_note-95"><span class="mw-cite-backlink"><b><a href="#cite_ref-95">^</a></b></span> <span class="reference-text">PowerShell script files (<link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.ps1</span> files) are by default associated with the Notepad editor, not with the PowerShell execution engine. Invoking a <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">.ps1</span> file will launch Notepad rather than executing the script.</span> </li> <li id="cite_note-96"><span class="mw-cite-backlink"><b><a href="#cite_ref-96">^</a></b></span> <span class="reference-text">Startup scripts per computer/user can import modules and expose a subset the commands/functions available in the modules.</span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="References">References</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=26" title="Edit section: References"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1239543626"><div class="reflist"> <div class="mw-references-wrap mw-references-columns"><ol class="references"> <li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text">A <a rel="nofollow" class="external text" href="http://www.collyer.net/who/geoff/v7sh.tar">platform independent version</a> based on the historical UNIX V7 original source code is available from <a rel="nofollow" class="external text" href="http://www.collyer.net/who/geoff/">Geoff Collyer</a></span> </li> <li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text">The historic UNIX V7 version is available under <a rel="nofollow" class="external text" href="http://minnie.tuhs.org/Archive/Caldera-license.pdf">a BSD-style license</a> through <a href="/wiki/The_Unix_Heritage_Society" class="mw-redirect" title="The Unix Heritage Society">The Unix Heritage Society</a> and others.</span> </li> <li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text">A <a rel="nofollow" class="external text" href="https://sourceforge.net/projects/schilytools/files/">platform independent version</a> based on the SVr4/Solaris source code is available from Jörg Schilling</span> </li> <li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/6/65/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/d/d6/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/a/aa/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/4/4c/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}</style><cite id="CITEREFFerrell" class="citation cs2">Ferrell, John, <a rel="nofollow" class="external text" href="https://www.freebsd.org/doc/en_US.ISO8859-1/articles/linux-users/shells.html">"Chapter 2. Default Shell"</a>, <a rel="nofollow" class="external text" href="https://www.freebsd.org/doc/en_US.ISO8859-1/articles/linux-users/index.html"><i>FreeBSD Quickstart Guide for Linux Users</i></a>, The FreeBSD Documentation Project<span class="reference-accessdate">, retrieved <span class="nowrap">2015-07-24</span></span></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.atitle=Chapter+2.+Default+Shell&rft.btitle=FreeBSD+Quickstart+Guide+for+Linux+Users&rft.pub=The+FreeBSD+Documentation+Project&rft.aulast=Ferrell&rft.aufirst=John&rft_id=https%3A%2F%2Fwww.freebsd.org%2Fdoc%2Fen_US.ISO8859-1%2Farticles%2Flinux-users%2Fshells.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://sourceforge.net/p/schillix-on/schillix-on/ci/default/tree/usr/src/cmd/sh/">"SchilliX-ON / SchilliX-ON Mercurial / [b1d9a2] /usr/src/cmd/sh"</a>. Sourceforge.net<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-07-02</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=SchilliX-ON+%2F+SchilliX-ON+Mercurial+%2F+%5Bb1d9a2%26%2393%3B+%2Fusr%2Fsrc%2Fcmd%2Fsh&rft.pub=Sourceforge.net&rft_id=https%3A%2F%2Fsourceforge.net%2Fp%2Fschillix-on%2Fschillix-on%2Fci%2Fdefault%2Ftree%2Fusr%2Fsrc%2Fcmd%2Fsh%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFIEEE_and_The_Open_Group2008" class="citation book cs1"><a href="/wiki/IEEE" class="mw-redirect" title="IEEE">IEEE</a> and The Open Group (2008). <i>IEEE 1003.1 Standard for Information Technology – Portable Operating System Interface (POSIX): Shell and Utilities, Issue 7</i>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=IEEE+1003.1+Standard+for+Information+Technology+%E2%80%93+Portable+Operating+System+Interface+%28POSIX%29%3A+Shell+and+Utilities%2C+Issue+7&rft.date=2008&rft.au=IEEE+and+The+Open+Group&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text">As part of IEEE Std.1003.2-1992 (POSIX.2); integrated into IEEE Std.1003.1 with the 2001 revision.</span> </li> <li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFFox1989" class="citation newsgroup cs1">Fox, Brian (1989-06-07). Tower Jr., Leonard H. (ed.). <a rel="nofollow" class="external text" href="https://groups.google.com/group/gnu.announce/msg/a509f48ffb298c35?hl=en">"Bash is in beta release!"</a>. <a href="/wiki/Usenet_newsgroup" title="Usenet newsgroup">Newsgroup</a>: <a rel="nofollow" class="external text" href="news:gnu.announce">gnu.announce</a>. <a href="/wiki/Usenet_(identifier)" class="mw-redirect" title="Usenet (identifier)">Usenet:</a> <a rel="nofollow" class="external text" href="news:8906080235.AA01983@wheat-chex.ai.mit.edu">8906080235.AA01983@wheat-chex.ai.mit.edu</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2010-10-28</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Bash+is+in+beta+release%21&rft.pub=gnu.announce&rft.date=1989-06-07&rft_id=news%3A8906080235.AA01983%40wheat-chex.ai.mit.edu%23id-name%3DUsenet%3A&rft.aulast=Fox&rft.aufirst=Brian&rft_id=https%3A%2F%2Fgroups.google.com%2Fgroup%2Fgnu.announce%2Fmsg%2Fa509f48ffb298c35%3Fhl%3Den&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFCooper" class="citation cs2">Cooper, Mendel, <a rel="nofollow" class="external text" href="http://tldp.org/LDP/abs/html/bashver4.html">"Chapter 37.3.2. Bash, version 4.2"</a>, <i>Advanced Bash-Scripting Guide</i>, The Linux Documentation Project<span class="reference-accessdate">, retrieved <span class="nowrap">2015-04-30</span></span></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.atitle=Chapter+37.3.2.+Bash%2C+version+4.2&rft.btitle=Advanced+Bash-Scripting+Guide&rft.pub=The+Linux+Documentation+Project&rft.aulast=Cooper&rft.aufirst=Mendel&rft_id=http%3A%2F%2Ftldp.org%2FLDP%2Fabs%2Fhtml%2Fbashver4.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span>, "Bash now supports the \u and \U Unicode escape."</span> </li> <li id="cite_note-Greer-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-Greer_12-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFGreer1983" class="citation newsgroup cs1">Greer, Ken (1983-10-03). <a rel="nofollow" class="external text" href="https://groups.google.com/group/net.sources/msg/7073bf41cc5da330?hl=en">"C shell with command and filename recognition/completion"</a>. <a href="/wiki/Usenet_newsgroup" title="Usenet newsgroup">Newsgroup</a>: <a rel="nofollow" class="external text" href="news:net.sources">net.sources</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2010-12-29</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=C+shell+with+command+and+filename+recognition%2Fcompletion&rft.pub=net.sources&rft.date=1983-10-03&rft.aulast=Greer&rft.aufirst=Ken&rft_id=https%3A%2F%2Fgroups.google.com%2Fgroup%2Fnet.sources%2Fmsg%2F7073bf41cc5da330%3Fhl%3Den&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.freebsd.org/en/articles/linux-users/">"FreeBSD Quickstart Guide for Linux® Users"</a>. <i>FreeBSD Documentation Portal</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2024-02-04</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=FreeBSD+Documentation+Portal&rft.atitle=FreeBSD+Quickstart+Guide+for+Linux%C2%AE+Users&rft_id=https%3A%2F%2Fdocs.freebsd.org%2Fen%2Farticles%2Flinux-users%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-PCWeek-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-PCWeek_14-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFSussman1988" class="citation journal cs1">Sussman, Ann (1988-12-26). <a rel="nofollow" class="external text" href="https://hamiltonlabs.com/archives/Hamilton-C-Shell-Speeds-Development-of-OS-2-Applications-Ann-Sussman-PC-Week-Dec-26-1988.pdf">"Hamilton C Shell Speeds Development Of OS/2 Applications"</a> <span class="cs1-format">(PDF)</span>. <i><a href="/wiki/PC_Week" class="mw-redirect" title="PC Week">PC Week</a></i> (1988-12-26 - 1989-01-02): 37<span class="reference-accessdate">. Retrieved <span class="nowrap">2010-11-22</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.jtitle=PC+Week&rft.atitle=Hamilton+C+Shell+Speeds+Development+Of+OS%2F2+Applications&rft.issue=1988-12-26+-+1989-01-02&rft.pages=37&rft.date=1988-12-26&rft.aulast=Sussman&rft.aufirst=Ann&rft_id=https%3A%2F%2Fhamiltonlabs.com%2Farchives%2FHamilton-C-Shell-Speeds-Development-of-OS-2-Applications-Ann-Sussman-PC-Week-Dec-26-1988.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-Gomes-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-Gomes_15-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFGomes1983" class="citation newsgroup cs1">Gomes, Ron (1983-06-09). <a rel="nofollow" class="external text" href="https://groups.google.com/group/net.usenix/msg/fa6e1f7de3b63bba?hl=en">"Toronto USENIX Conference Schedule (tentative)"</a>. <a href="/wiki/Usenet_newsgroup" title="Usenet newsgroup">Newsgroup</a>: <a rel="nofollow" class="external text" href="news:net.usenix">net.usenix</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2010-12-29</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Toronto+USENIX+Conference+Schedule+%28tentative%29&rft.pub=net.usenix&rft.date=1983-06-09&rft.aulast=Gomes&rft.aufirst=Ron&rft_id=https%3A%2F%2Fgroups.google.com%2Fgroup%2Fnet.usenix%2Fmsg%2Ffa6e1f7de3b63bba%3Fhl%3Den&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-Harris-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-Harris_16-0">^</a></b></span> <span class="reference-text"> <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFHarris1983" class="citation newsgroup cs1">Harris, Guy (1983-10-10). <a rel="nofollow" class="external text" href="https://groups.google.com/group/net.flame/msg/4f868085b65af530?hl=en">"csh question"</a>. <a href="/wiki/Usenet_newsgroup" title="Usenet newsgroup">Newsgroup</a>: <a rel="nofollow" class="external text" href="news:net.flame">net.flame</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2010-12-29</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=csh+question&rft.pub=net.flame&rft.date=1983-10-10&rft.aulast=Harris&rft.aufirst=Guy&rft_id=https%3A%2F%2Fgroups.google.com%2Fgroup%2Fnet.flame%2Fmsg%2F4f868085b65af530%3Fhl%3Den&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-ksh93-man-page-17"><span class="mw-cite-backlink">^ <a href="#cite_ref-ksh93-man-page_17-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-ksh93-man-page_17-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://docs.oracle.com/cd/E36784_01/html/E36870/ksh-1.html">ksh93(1) man page</a></span> </li> <li id="cite_note-default_OpenBSD-18"><span class="mw-cite-backlink">^ <a href="#cite_ref-default_OpenBSD_18-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-default_OpenBSD_18-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.openbsd.org/faq/faq10.html#rootshell">Default shell in OpenBSD</a> is ksh (pdksh).</span> </li> <li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text">The zsh command line editor is fully configurable and can allow mouse support in various ways such as with <a rel="nofollow" class="external text" href="http://stchaz.free.fr/mouse.zsh">Stéphane Chazelas's <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">mouse.zsh</span></a>.</span> </li> <li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://linux.die.net/man/1/zsh">zsh(1) man page and subpages</a></span> </li> <li id="cite_note-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-21">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://linux.die.net/man/1/zshbuiltins">zshbuiltins(1) man page</a></span> </li> <li id="cite_note-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-22">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFLefevre2015" class="citation mailinglist cs1">Lefevre, Vincent (2015-02-11). <a rel="nofollow" class="external text" href="https://www.zsh.org/mla/users/2015/msg00211.html">"multi-digit file descriptors"</a>. <i>zsh-users</i> (Mailing list)<span class="reference-accessdate">. Retrieved <span class="nowrap">2021-12-23</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=multi-digit+file+descriptors&rft.date=2015-02-11&rft.aulast=Lefevre&rft.aufirst=Vincent&rft_id=https%3A%2F%2Fwww.zsh.org%2Fmla%2Fusers%2F2015%2Fmsg00211.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=782228">"#782228 - busybox sh doesn't support multibyte characters in string handling - Debian Bug report logs"</a>. Bugs.debian.org. 2015-04-09<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-07-02</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=%23782228+-+busybox+sh+doesn%27t+support+multibyte+characters+in+string+handling+-+Debian+Bug+report+logs&rft.pub=Bugs.debian.org&rft.date=2015-04-09&rft_id=https%3A%2F%2Fbugs.debian.org%2Fcgi-bin%2Fbugreport.cgi%3Fbug%3D782228&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-28">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20070325041517/http://h71000.www7.hp.com/doc/732FINAL/9996/9996pro_contents.html">"HP OpenVMS DCL Dictionary"</a>. Archived from <a rel="nofollow" class="external text" href="http://h71000.www7.hp.com/doc/732final/9996/9996pro_contents.html">the original</a> on 2007-03-25<span class="reference-accessdate">. Retrieved <span class="nowrap">2009-03-23</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=HP+OpenVMS+DCL+Dictionary&rft_id=http%3A%2F%2Fh71000.www7.hp.com%2Fdoc%2F732final%2F9996%2F9996pro_contents.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-30">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFLarabel2021" class="citation web cs1">Larabel, Michael (2021-03-23). <a rel="nofollow" class="external text" href="https://www.phoronix.com/scan.php?page=news_item&px=Plan-9-2021">"Plan 9 Copyright Transferred To Foundation, MIT Licensed Code Released"</a>. <i>Phoronix</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-03-28</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=Phoronix&rft.atitle=Plan+9+Copyright+Transferred+To+Foundation%2C+MIT+Licensed+Code+Released&rft.date=2021-03-23&rft.aulast=Larabel&rft.aufirst=Michael&rft_id=https%3A%2F%2Fwww.phoronix.com%2Fscan.php%3Fpage%3Dnews_item%26px%3DPlan-9-2021&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFLiljencrantz2005" class="citation web cs1">Liljencrantz, Axel (2005-05-17). <a rel="nofollow" class="external text" href="https://lwn.net/Articles/136232/">"Fish - The friendly interactive shell"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2013-04-08</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Fish+-+The+friendly+interactive+shell&rft.date=2005-05-17&rft.aulast=Liljencrantz&rft.aufirst=Axel&rft_id=https%3A%2F%2Flwn.net%2FArticles%2F136232%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFSoller2015" class="citation web cs1">Soller, Jeremy (2015-11-15). <a rel="nofollow" class="external text" href="https://gitlab.redox-os.org/redox-os/ion/commit/d79c8f511573fb7710abc63b4236a40022914520">"d79c8f511573fb7710abc63b4236a40022914520"</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2019-08-03</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=d79c8f511573fb7710abc63b4236a40022914520&rft.date=2015-11-15&rft.aulast=Soller&rft.aufirst=Jeremy&rft_id=https%3A%2F%2Fgitlab.redox-os.org%2Fredox-os%2Fion%2Fcommit%2Fd79c8f511573fb7710abc63b4236a40022914520&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://zsh.sourceforge.io/Doc/Release/Completion-System.html">"[Z Shell] Completion System"</a>. Zsh.sourceforge.io<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=%5BZ+Shell%5D+Completion+System&rft.pub=Zsh.sourceforge.io&rft_id=https%3A%2F%2Fzsh.sourceforge.io%2FDoc%2FRelease%2FCompletion-System.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-36">^</a></b></span> <span class="reference-text">This applies only on reserved words and other syntactic features.</span> </li> <li id="cite_note-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-37">^</a></b></span> <span class="reference-text">e.g. via 3rd party such as <a rel="nofollow" class="external text" href="https://github.com/tarruda/zsh-autosuggestions">zsh-autosuggestions</a></span> </li> <li id="cite_note-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-38">^</a></b></span> <span class="reference-text">zsh does not feature syntax highlighting, but a 3rd party project exists which offers this capability as an add-on: <a rel="nofollow" class="external text" href="https://github.com/zsh-users/zsh-syntax-highlighting">zsh-syntax-highlighting</a></span> </li> <li id="cite_note-Paul_1997_OD-A3-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-Paul_1997_OD-A3_41-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFPaul1997" class="citation web cs1">Paul, Matthias R. (1997-10-02) [1997-09-29]. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20031004074600/http://www-student.informatik.uni-bonn.de/~frinke/ibmbioa3.zip">"Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM - README.TXT and BOOT.TXT - A short description of how OpenDOS is booted"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.uni-bonn.de/~uzs180/download/ibmbioa3.zip">the original</a> on 2003-10-04<span class="reference-accessdate">. Retrieved <span class="nowrap">2009-03-29</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Caldera+OpenDOS+7.01%2F7.02+Update+Alpha+3+IBMBIO.COM+-+README.TXT+and+BOOT.TXT+-+A+short+description+of+how+OpenDOS+is+booted&rft.date=1997-10-02&rft.aulast=Paul&rft.aufirst=Matthias+R.&rft_id=http%3A%2F%2Fwww.uni-bonn.de%2F~uzs180%2Fdownload%2Fibmbioa3.zip&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span> <a rel="nofollow" class="external autonumber" href="https://web.archive.org/web/20181225154705/http://mirror.macintosharchive.org/max1zzz.co.uk/+Windows%20&%20DOS/DOS/System/Novell/Support/Bins/Op702src.zip">[1]</a></span> </li> <li id="cite_note-PSReadLine-45"><span class="mw-cite-backlink">^ <a href="#cite_ref-PSReadLine_45-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-PSReadLine_45-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-PSReadLine_45-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-PSReadLine_45-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-PSReadLine_45-4"><sup><i><b>e</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFShirk2018" class="citation web cs1">Shirk, Jason (2018-02-15). <a rel="nofollow" class="external text" href="https://github.com/lzybkr/PSReadLine">"PSReadLine: A bash inspired readline implementation for PowerShell"</a> – via GitHub.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=PSReadLine%3A+A+bash+inspired+readline+implementation+for+PowerShell&rft.date=2018-02-15&rft.aulast=Shirk&rft.aufirst=Jason&rft_id=https%3A%2F%2Fgithub.com%2Flzybkr%2FPSReadLine&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-46"><span class="mw-cite-backlink"><b><a href="#cite_ref-46">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20160917093943/https://msdn.microsoft.com/en-us/powershell/scripting/core-powershell/core-modules/windows-powershell-5.0">"Windows PowerShell 5.0"</a>. Archived from <a rel="nofollow" class="external text" href="https://msdn.microsoft.com/en-us/powershell/scripting/core-powershell/core-modules/windows-powershell-5.0">the original</a> on 17 September 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">8 September</span> 2016</span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Windows+PowerShell+5.0&rft_id=https%3A%2F%2Fmsdn.microsoft.com%2Fen-us%2Fpowershell%2Fscripting%2Fcore-powershell%2Fcore-modules%2Fwindows-powershell-5.0&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-powershell_ise-47"><span class="mw-cite-backlink">^ <a href="#cite_ref-powershell_ise_47-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-powershell_ise_47-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-powershell_ise_47-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-powershell_ise_47-3"><sup><i><b>d</b></i></sup></a> <a href="#cite_ref-powershell_ise_47-4"><sup><i><b>e</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/dd819514.aspx?f=255&MSPPError=-2147217396">"Windows PowerShell Integrated Scripting Environment (ISE)"</a>. Microsoft Technet<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-09-12</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Windows+PowerShell+Integrated+Scripting+Environment+%28ISE%29&rft.pub=Microsoft+Technet&rft_id=https%3A%2F%2Ftechnet.microsoft.com%2Fen-us%2Flibrary%2Fdd819514.aspx%3Ff%3D255%26MSPPError%3D-2147217396&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-48"><span class="mw-cite-backlink"><b><a href="#cite_ref-48">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/joonro/Get-ChildItemColor">"Get-ChildItemColor"</a>. <i><a href="/wiki/GitHub" title="GitHub">GitHub</a></i>. 2022-03-18.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=GitHub&rft.atitle=Get-ChildItemColor&rft.date=2022-03-18&rft_id=https%3A%2F%2Fgithub.com%2Fjoonro%2FGet-ChildItemColor&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-49"><span class="mw-cite-backlink"><b><a href="#cite_ref-49">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFsdwheeler" class="citation web cs1">sdwheeler. <a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/write-host">"Write-Host (Microsoft.PowerShell.Utility) - PowerShell"</a>. <i>docs.microsoft.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-01-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=docs.microsoft.com&rft.atitle=Write-Host+%28Microsoft.PowerShell.Utility%29+-+PowerShell&rft.au=sdwheeler&rft_id=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fpowershell%2Fmodule%2Fmicrosoft.powershell.utility%2Fwrite-host&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-50"><span class="mw-cite-backlink"><b><a href="#cite_ref-50">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh849855.aspx">Push-Location</a> (with alias <code>pushd</code>) and <a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh849842.aspx">Pop-Location</a> (with alias <code>popd</code>) allows multiple location types (directories of file systems, organizational units of <a href="/wiki/Active_Directory" title="Active Directory">Active Directory</a>, nodes of <a href="/wiki/Windows_Registry" title="Windows Registry">Windows Registry</a> etc) to be pushed onto and popped from location stacks.</span> </li> <li id="cite_note-51"><span class="mw-cite-backlink"><b><a href="#cite_ref-51">^</a></b></span> <span class="reference-text">The <a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/ff730939.aspx">$host.ui.PromptForChoice</a> function allows for a menu-style prompt for choices. The prompt works from background jobs as well as from remote sessions, displaying the menu prompt on the console of the controlling session.</span> </li> <li id="cite_note-52"><span class="mw-cite-backlink"><b><a href="#cite_ref-52">^</a></b></span> <span class="reference-text">The <a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh849902.aspx"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">Write-Progress</span></a> cmdlet writes a progress bar which can indicate percentage, remaining seconds etc. The progress bar messages work from background jobs or remote sessions in addition to interactive scripts, i.e. the progress bar is displayed on the console of the controlling session, not as part of the regular output.</span> </li> <li id="cite_note-53"><span class="mw-cite-backlink"><b><a href="#cite_ref-53">^</a></b></span> <span class="reference-text">The <a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh849915.aspx"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">Show-Command</span></a> cmdlet inspects the command definition and opens an interactive windows with a named input field for each parameter/switch</span> </li> <li id="cite_note-fishcompletion-55"><span class="mw-cite-backlink">^ <a href="#cite_ref-fishcompletion_55-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-fishcompletion_55-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://fishshell.com/docs/current/index.html#completion">"fish: Documentation"</a>. Section <i>Tab completion</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2016-01-10</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=fish%3A+Documentation&rft.pages=Section+%27%27Tab+completion%27%27&rft_id=http%3A%2F%2Ffishshell.com%2Fdocs%2Fcurrent%2Findex.html%23completion&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-56"><span class="mw-cite-backlink"><b><a href="#cite_ref-56">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://fishshell.com/docs/current/cmds/set_color.html">"set_color - set the terminal color — fish-shell 3.1.2 documentation"</a>. <i>fishshell.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200217185759/http://fishshell.com:80/docs/current/cmds/set_color.html">Archived</a> from the original on 2020-02-17<span class="reference-accessdate">. Retrieved <span class="nowrap">2021-02-23</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=fishshell.com&rft.atitle=set_color+-+set+the+terminal+color+%E2%80%94+fish-shell+3.1.2+documentation&rft_id=https%3A%2F%2Ffishshell.com%2Fdocs%2Fcurrent%2Fcmds%2Fset_color.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-58"><span class="mw-cite-backlink"><b><a href="#cite_ref-58">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://fishshell.com/docs/current/cmds/abbr.html">"abbr - manage fish abbreviations — fish-shell 3.1.2 documentation"</a>. <i>fishshell.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-02-23</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=fishshell.com&rft.atitle=abbr+-+manage+fish+abbreviations+%E2%80%94+fish-shell+3.1.2+documentation&rft_id=https%3A%2F%2Ffishshell.com%2Fdocs%2Fcurrent%2Fcmds%2Fabbr.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-59"><span class="mw-cite-backlink"><b><a href="#cite_ref-59">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFsdwheeler" class="citation web cs1">sdwheeler. <a rel="nofollow" class="external text" href="https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/start-process">"Start-Process (Microsoft.PowerShell.Management) - PowerShell"</a>. <i>learn.microsoft.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-10-21</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=learn.microsoft.com&rft.atitle=Start-Process+%28Microsoft.PowerShell.Management%29+-+PowerShell&rft.au=sdwheeler&rft_id=https%3A%2F%2Flearn.microsoft.com%2Fen-us%2Fpowershell%2Fmodule%2Fmicrosoft.powershell.management%2Fstart-process&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-60"><span class="mw-cite-backlink"><b><a href="#cite_ref-60">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFsdwheeler" class="citation web cs1">sdwheeler. <a rel="nofollow" class="external text" href="https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/start-job">"Start-Job (Microsoft.PowerShell.Core) - PowerShell"</a>. <i>learn.microsoft.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-10-21</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=learn.microsoft.com&rft.atitle=Start-Job+%28Microsoft.PowerShell.Core%29+-+PowerShell&rft.au=sdwheeler&rft_id=https%3A%2F%2Flearn.microsoft.com%2Fen-us%2Fpowershell%2Fmodule%2Fmicrosoft.powershell.core%2Fstart-job&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-61"><span class="mw-cite-backlink"><b><a href="#cite_ref-61">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://zsh.sourceforge.io/Doc/Release/Completion-System.html">"zsh: 20. Completion System"</a>. Zsh.sourceforge.io. 2013-03-06<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-08-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=zsh%3A+20.+Completion+System&rft.pub=Zsh.sourceforge.io&rft.date=2013-03-06&rft_id=https%3A%2F%2Fzsh.sourceforge.io%2FDoc%2FRelease%2FCompletion-System.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-ps-mandatoryparameter-62"><span class="mw-cite-backlink"><b><a href="#cite_ref-ps-mandatoryparameter_62-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://blogs.technet.com/b/heyscriptingguy/archive/2011/05/22/use-powershell-to-make-mandatory-parameters.aspx">"Use PowerShell to Make Mandatory Parameters"</a>. Blogs.technet.com. 2011-05-22<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Use+PowerShell+to+Make+Mandatory+Parameters&rft.pub=Blogs.technet.com&rft.date=2011-05-22&rft_id=http%3A%2F%2Fblogs.technet.com%2Fb%2Fheyscriptingguy%2Farchive%2F2011%2F05%2F22%2Fuse-powershell-to-make-mandatory-parameters.aspx&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-63"><span class="mw-cite-backlink"><b><a href="#cite_ref-63">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFsdwheeler" class="citation web cs1">sdwheeler. <a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/powershell/scripting/windows-powershell/whats-new/what-s-new-in-the-powershell-50-ise">"What's New in the PowerShell 5.0 ISE - PowerShell"</a>. <i>docs.microsoft.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-07-25</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=docs.microsoft.com&rft.atitle=What%27s+New+in+the+PowerShell+5.0+ISE+-+PowerShell&rft.au=sdwheeler&rft_id=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fpowershell%2Fscripting%2Fwindows-powershell%2Fwhats-new%2Fwhat-s-new-in-the-powershell-50-ise&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-64"><span class="mw-cite-backlink"><b><a href="#cite_ref-64">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/marlonrichert/zsh-autocomplete">"GitHub - marlonrichert/zsh-autocomplete: 🤖 Real-time type-ahead completion for Zsh. Asynchronous find-as-you-type autocompletion"</a>. <i>GitHub</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-07-25</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=GitHub&rft.atitle=GitHub+-+marlonrichert%2Fzsh-autocomplete%3A+%F0%9F%A4%96+Real-time+type-ahead+completion+for+Zsh.+Asynchronous+find-as-you-type+autocompletion.&rft_id=https%3A%2F%2Fgithub.com%2Fmarlonrichert%2Fzsh-autocomplete&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-65"><span class="mw-cite-backlink"><b><a href="#cite_ref-65">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://fishshell.com/docs/current/interactive.html#autosuggestions">"Interactive use — fish-shell 3.3.1 documentation"</a>. <i>fishshell.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-07-25</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=fishshell.com&rft.atitle=Interactive+use+%E2%80%94+fish-shell+3.3.1+documentation&rft_id=https%3A%2F%2Ffishshell.com%2Fdocs%2Fcurrent%2Finteractive.html%23autosuggestions&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-66"><span class="mw-cite-backlink"><b><a href="#cite_ref-66">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFHahn2009" class="citation book cs1">Hahn, Harley (2009). <a rel="nofollow" class="external text" href="https://www.worldcat.org/oclc/184828059"><i>Harley Hahn's guide to Unix and Linux</i></a>. Boston: McGraw-Hill Higher Education. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-07-313361-4" title="Special:BookSources/978-0-07-313361-4"><bdi>978-0-07-313361-4</bdi></a>. <a href="/wiki/OCLC_(identifier)" class="mw-redirect" title="OCLC (identifier)">OCLC</a> <a rel="nofollow" class="external text" href="https://search.worldcat.org/oclc/184828059">184828059</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Harley+Hahn%27s+guide+to+Unix+and+Linux&rft.place=Boston&rft.pub=McGraw-Hill+Higher+Education&rft.date=2009&rft_id=info%3Aoclcnum%2F184828059&rft.isbn=978-0-07-313361-4&rft.aulast=Hahn&rft.aufirst=Harley&rft_id=https%3A%2F%2Fwww.worldcat.org%2Foclc%2F184828059&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-DRI_1987_CDOS_User-67"><span class="mw-cite-backlink"><b><a href="#cite_ref-DRI_1987_CDOS_User_67-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation book cs1"><a rel="nofollow" class="external text" href="http://bitsavers.org/pdf/digitalResearch/concurrent/1126-2004-001_Concurrent_DOS_386_Users_Guide_Nov87.pdf"><i>Concurrent DOS 386 - Multiuser/Multitasking Operating System - User Guide</i></a> <span class="cs1-format">(PDF)</span>. <a href="/wiki/Digital_Research" title="Digital Research">Digital Research</a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Concurrent+DOS+386+-+Multiuser%2FMultitasking+Operating+System+-+User+Guide&rft.pub=Digital+Research&rft_id=http%3A%2F%2Fbitsavers.org%2Fpdf%2FdigitalResearch%2Fconcurrent%2F1126-2004-001_Concurrent_DOS_386_Users_Guide_Nov87.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-68"><span class="mw-cite-backlink"><b><a href="#cite_ref-68">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://linux.die.net/man/1/pv">"pv(1): monitor progress of data through pipe - Linux man page"</a>. Linux.die.net<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=pv%281%29%3A+monitor+progress+of+data+through+pipe+-+Linux+man+page&rft.pub=Linux.die.net&rft_id=http%3A%2F%2Flinux.die.net%2Fman%2F1%2Fpv&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-69"><span class="mw-cite-backlink"><b><a href="#cite_ref-69">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://fishshell.com/docs/3.0/tutorial.html#tut_syntax_highlighting">"fish: Tutorial"</a>. <i>fishshell.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-10-21</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=fishshell.com&rft.atitle=fish%3A+Tutorial&rft_id=https%3A%2F%2Ffishshell.com%2Fdocs%2F3.0%2Ftutorial.html%23tut_syntax_highlighting&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-70"><span class="mw-cite-backlink"><b><a href="#cite_ref-70">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/zsh-users/zsh-syntax-highlighting">"zsh-users/zsh-syntax-highlighting: Fish shell like syntax highlighting for Zsh"</a>. <i>GitHub</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2013-08-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=GitHub&rft.atitle=zsh-users%2Fzsh-syntax-highlighting%3A+Fish+shell+like+syntax+highlighting+for+Zsh&rft_id=https%3A%2F%2Fgithub.com%2Fzsh-users%2Fzsh-syntax-highlighting&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-71"><span class="mw-cite-backlink"><b><a href="#cite_ref-71">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFsdwheeler" class="citation web cs1">sdwheeler. <a rel="nofollow" class="external text" href="https://learn.microsoft.com/en-us/powershell/module/psreadline/">"PSReadLine Module - PowerShell"</a>. <i>learn.microsoft.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2023-04-26</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=learn.microsoft.com&rft.atitle=PSReadLine+Module+-+PowerShell&rft.au=sdwheeler&rft_id=https%3A%2F%2Flearn.microsoft.com%2Fen-us%2Fpowershell%2Fmodule%2Fpsreadline%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-72"><span class="mw-cite-backlink"><b><a href="#cite_ref-72">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="https://github.com/tcsh-org/tcsh/pull/77"><i>Introduce 'function' built-in</i></a> by Matheus Garcia</span> </li> <li id="cite_note-73"><span class="mw-cite-backlink"><b><a href="#cite_ref-73">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20100310193527/http://www.in-ulm.de/~mascheck/various/ash/">"Ash Variants"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.in-ulm.de/~mascheck/various/ash/">the original</a> on 2010-03-10<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-12-15</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Ash+Variants&rft_id=http%3A%2F%2Fwww.in-ulm.de%2F~mascheck%2Fvarious%2Fash%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-74"><span class="mw-cite-backlink"><b><a href="#cite_ref-74">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://ss64.com/nt/set.html">"Set - Environment Variable - Windows CMD"</a>. SS64.com<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Set+-+Environment+Variable+-+Windows+CMD&rft.pub=SS64.com&rft_id=https%3A%2F%2Fss64.com%2Fnt%2Fset.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-75"><span class="mw-cite-backlink"><b><a href="#cite_ref-75">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://stackoverflow.com/questions/18462169/how-to-loop-through-array-in-batch">"How to loop through array in batch?"</a>. Stack Overflow<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=How+to+loop+through+array+in+batch%3F&rft.pub=Stack+Overflow&rft_id=https%3A%2F%2Fstackoverflow.com%2Fquestions%2F18462169%2Fhow-to-loop-through-array-in-batch&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-76"><span class="mw-cite-backlink"><b><a href="#cite_ref-76">^</a></b></span> <span class="reference-text">The .NET <i>System.Math</i> class defines mathematical functions that can be used through the shortcut <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[Math]</span>, e.g. <link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">[Math]::Sin</span> for the <i>sinus</i> function.<a rel="nofollow" class="external autonumber" href="https://technet.microsoft.com/en-us/library/dd347632.aspx">[2]</a></span> </li> <li id="cite_note-77"><span class="mw-cite-backlink"><b><a href="#cite_ref-77">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://devblogs.microsoft.com/powershell/get-closure-with-getnewclosure/">"Get closure with GetNewClosure"</a>. <i>devblogs.microsoft.com</i>. 2009-03-27<span class="reference-accessdate">. Retrieved <span class="nowrap">2022-09-12</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=devblogs.microsoft.com&rft.atitle=Get+closure+with+GetNewClosure&rft.date=2009-03-27&rft_id=https%3A%2F%2Fdevblogs.microsoft.com%2Fpowershell%2Fget-closure-with-getnewclosure%2F&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-78"><span class="mw-cite-backlink"><b><a href="#cite_ref-78">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://fishshell.com/docs/current/cmds/string.html">"string - manipulate strings — fish-shell 3.1.2 documentation"</a>. <i>fishshell.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2021-02-23</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=fishshell.com&rft.atitle=string+-+manipulate+strings+%E2%80%94+fish-shell+3.1.2+documentation&rft_id=https%3A%2F%2Ffishshell.com%2Fdocs%2Fcurrent%2Fcmds%2Fstring.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-79"><span class="mw-cite-backlink"><b><a href="#cite_ref-79">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation cs2"><a rel="nofollow" class="external text" href="https://hamiltonlabs.com/UserGuide/31-Wildcarding.htm"><i>Hamilton C shell Language reference: Wildcarding and pattern matching</i></a>, Hamilton Laboratories<span class="reference-accessdate">, retrieved <span class="nowrap">2013-10-29</span></span>, <q><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r886049734"><span class="monospaced">...</span> Indefinite Directory: match any number of directory levels – zero or more – whatever it takes to make the rest of the pattern match.</q></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Hamilton+C+shell+Language+reference%3A+Wildcarding+and+pattern+matching&rft.pub=Hamilton+Laboratories&rft_id=https%3A%2F%2Fhamiltonlabs.com%2FUserGuide%2F31-Wildcarding.htm&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-Apress-80"><span class="mw-cite-backlink">^ <a href="#cite_ref-Apress_80-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Apress_80-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFSeebach2008" class="citation book cs1">Seebach, Peter (2008-11-21). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=53zaxy423xcC"><i>Beginning Portable Shell Scripting: From Novice to Professional</i></a>. Expert's voice in open source. Apress (published 2008). p. 149. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/9781430210436" title="Special:BookSources/9781430210436"><bdi>9781430210436</bdi></a><span class="reference-accessdate">. Retrieved <span class="nowrap">2014-09-17</span></span>. <q>Brace expansion is available in ksh93, pdksh, bash, and zsh.</q></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Beginning+Portable+Shell+Scripting%3A+From+Novice+to+Professional&rft.series=Expert%27s+voice+in+open+source&rft.pages=149&rft.pub=Apress&rft.date=2008-11-21&rft.isbn=9781430210436&rft.aulast=Seebach&rft.aufirst=Peter&rft_id=https%3A%2F%2Fbooks.google.com%2Fbooks%3Fid%3D53zaxy423xcC&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-extended_globbing-81"><span class="mw-cite-backlink"><b><a href="#cite_ref-extended_globbing_81-0">^</a></b></span> <span class="reference-text">Zsh offers a variety of <a rel="nofollow" class="external text" href="https://zsh.sourceforge.io/Guide/zshguide05.html#l135">globbing options</a>.</span> </li> <li id="cite_note-83"><span class="mw-cite-backlink"><b><a href="#cite_ref-83">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFsdwheeler" class="citation web cs1">sdwheeler. <a rel="nofollow" class="external text" href="https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_operators">"about Operators - PowerShell"</a>. <i>docs.microsoft.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-01-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=docs.microsoft.com&rft.atitle=about+Operators+-+PowerShell&rft.au=sdwheeler&rft_id=https%3A%2F%2Fdocs.microsoft.com%2Fen-us%2Fpowershell%2Fmodule%2Fmicrosoft.powershell.core%2Fabout%2Fabout_operators&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-4DOS_8.00_HELP-86"><span class="mw-cite-backlink"><b><a href="#cite_ref-4DOS_8.00_HELP_86-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFBrothersRawsonConnPaul2002" class="citation book cs1">Brothers, Hardin; <a href="/wiki/Tom_Rawson" class="mw-redirect" title="Tom Rawson">Rawson, Tom</a>; <a href="/wiki/Rex_C._Conn" class="mw-redirect" title="Rex C. Conn">Conn, Rex C.</a>; Paul, Matthias R.; Dye, Charles E.; Georgiev, Luchezar I. (2002-02-27). <a href="/wiki/4DOS_8.00" class="mw-redirect" title="4DOS 8.00"><i>4DOS 8.00 online help</i></a>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=4DOS+8.00+online+help&rft.date=2002-02-27&rft.aulast=Brothers&rft.aufirst=Hardin&rft.au=Rawson%2C+Tom&rft.au=Conn%2C+Rex+C.&rft.au=Paul%2C+Matthias+R.&rft.au=Dye%2C+Charles+E.&rft.au=Georgiev%2C+Luchezar+I.&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-87"><span class="mw-cite-backlink"><b><a href="#cite_ref-87">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/fish-shell/fish-shell/issues/1040">"find a way to make 'psub --fifo' safe from deadlock · Issue #1040 · fish-shell/fish-shell"</a>. <i>GitHub</i>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=GitHub&rft.atitle=find+a+way+to+make+%27psub+--fifo%27+safe+from+deadlock+%C2%B7+Issue+%231040+%C2%B7+fish-shell%2Ffish-shell&rft_id=https%3A%2F%2Fgithub.com%2Ffish-shell%2Ffish-shell%2Fissues%2F1040&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-97"><span class="mw-cite-backlink"><b><a href="#cite_ref-97">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh848302.aspx">"About Data Sections"</a>. Technet.microsoft.com<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=About+Data+Sections&rft.pub=Technet.microsoft.com&rft_id=https%3A%2F%2Ftechnet.microsoft.com%2Fen-us%2Flibrary%2Fhh848302.aspx&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-98"><span class="mw-cite-backlink"><b><a href="#cite_ref-98">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://manpages.ubuntu.com/manpages/precise/man1/rc.1.html">"Ubuntu Manpage: rc - shell"</a>. Manpages.ubuntu.com. 2003-07-17<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Ubuntu+Manpage%3A+rc+-+shell&rft.pub=Manpages.ubuntu.com&rft.date=2003-07-17&rft_id=http%3A%2F%2Fmanpages.ubuntu.com%2Fmanpages%2Fprecise%2Fman1%2Frc.1.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-encryptmemory-99"><span class="mw-cite-backlink"><b><a href="#cite_ref-encryptmemory_99-0">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFProvos" class="citation web cs1">Provos, Niels. <a rel="nofollow" class="external text" href="http://www.openbsd.org/papers/swapencrypt.ps">"Encrypting Virtual Memory"</a>. Center for Information Technology Integration, University of Michigan<span class="reference-accessdate">. Retrieved <span class="nowrap">2012-12-20</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Encrypting+Virtual+Memory&rft.pub=Center+for+Information+Technology+Integration%2C+University+of+Michigan&rft.aulast=Provos&rft.aufirst=Niels&rft_id=http%3A%2F%2Fwww.openbsd.org%2Fpapers%2Fswapencrypt.ps&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-100"><span class="mw-cite-backlink"><b><a href="#cite_ref-100">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.gnu.org/software/bash/manual/html_node/Bash-Builtins.html">"bash - GNU Bourne-Again SHell"</a>. <q>read -s Silent mode. If input is coming from a terminal, characters are not echoed.</q></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=bash+-+GNU+Bourne-Again+SHell&rft_id=https%3A%2F%2Fwww.gnu.org%2Fsoftware%2Fbash%2Fmanual%2Fhtml_node%2FBash-Builtins.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-101"><span class="mw-cite-backlink"><b><a href="#cite_ref-101">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/ee176935.aspx">"Using the Read-Host Cmdlet"</a>. <q>By adding the -assecurestring parameter you can mask the data entered at the prompt</q></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Using+the+Read-Host+Cmdlet&rft_id=https%3A%2F%2Ftechnet.microsoft.com%2Fen-us%2Flibrary%2Fee176935.aspx&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-102"><span class="mw-cite-backlink"><b><a href="#cite_ref-102">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20150225005431/http://linux.about.com/od/commands/l/blcmdl1_stty.htm">"Linux / Unix Command: stty"</a>. Linux.about.com. Archived from <a rel="nofollow" class="external text" href="http://linux.about.com/od/commands/l/blcmdl1_stty.htm">the original</a> on 2015-02-25<span class="reference-accessdate">. Retrieved <span class="nowrap">2015-02-24</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Linux+%2F+Unix+Command%3A+stty&rft.pub=Linux.about.com&rft_id=http%3A%2F%2Flinux.about.com%2Fod%2Fcommands%2Fl%2Fblcmdl1_stty.htm&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-103"><span class="mw-cite-backlink"><b><a href="#cite_ref-103">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1 cs1-prop-foreign-lang-source"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20141221210713/http://pwet.fr/man/linux/commandes/posix/sh">"man sh - shell, the standard command language interpreter / posix"</a> (in French). Pwet.fr. Archived from <a rel="nofollow" class="external text" href="http://pwet.fr/man/linux/commandes/posix/sh">the original</a> on 2014-12-21<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-08-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=man+sh+-+shell%2C+the+standard+command+language+interpreter+%2F+posix&rft.pub=Pwet.fr&rft_id=http%3A%2F%2Fpwet.fr%2Fman%2Flinux%2Fcommandes%2Fposix%2Fsh&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-104"><span class="mw-cite-backlink"><b><a href="#cite_ref-104">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.gnu.org/software/bash/manual/html_node/The-Restricted-Shell.html">"Bash Reference Manual: The Restricted Shell"</a>. Gnu.org. 2010-12-28<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-08-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=Bash+Reference+Manual%3A+The+Restricted+Shell&rft.pub=Gnu.org&rft.date=2010-12-28&rft_id=https%3A%2F%2Fwww.gnu.org%2Fsoftware%2Fbash%2Fmanual%2Fhtml_node%2FThe-Restricted-Shell.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-105"><span class="mw-cite-backlink"><b><a href="#cite_ref-105">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh849712.aspx">"New-PSSessionConfigurationFile"</a>. Technet.microsoft.com<span class="reference-accessdate">. Retrieved <span class="nowrap">2013-08-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=New-PSSessionConfigurationFile&rft.pub=Technet.microsoft.com&rft_id=https%3A%2F%2Ftechnet.microsoft.com%2Fen-us%2Flibrary%2Fhh849712.aspx&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-106"><span class="mw-cite-backlink"><b><a href="#cite_ref-106">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFAlbingVossenNewham2007" class="citation book cs1">Albing, Carl; Vossen, J. P.; Newham, Cameron (2007). <i>Bash cookbook</i> (1st ed.). Sebastopol, California, USA: <a href="/wiki/O%27Reilly_Media" title="O'Reilly Media">O'Reilly Media</a>. <a href="/wiki/ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <a href="/wiki/Special:BookSources/978-0-596-52678-8" title="Special:BookSources/978-0-596-52678-8"><bdi>978-0-596-52678-8</bdi></a>. <q>[...] is hardly what one thinks of as a passive list of configured variables. It can run other commands (e.g., cat) and use if statements to vary its choices. It even ends by echoing a message. Be careful when you source something, as it's a wide open door into your script.</q></cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.btitle=Bash+cookbook&rft.place=Sebastopol%2C+California%2C+USA&rft.edition=1st&rft.pub=O%27Reilly+Media&rft.date=2007&rft.isbn=978-0-596-52678-8&rft.aulast=Albing&rft.aufirst=Carl&rft.au=Vossen%2C+J.+P.&rft.au=Newham%2C+Cameron&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> <li id="cite_note-107"><span class="mw-cite-backlink"><b><a href="#cite_ref-107">^</a></b></span> <span class="reference-text"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://technet.microsoft.com/en-us/library/hh848302.aspx">"About Data Sections"</a>. <a href="/wiki/Microsoft" title="Microsoft">Microsoft</a><span class="reference-accessdate">. Retrieved <span class="nowrap">2012-12-18</span></span>.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=unknown&rft.btitle=About+Data+Sections&rft.pub=Microsoft&rft_id=https%3A%2F%2Ftechnet.microsoft.com%2Fen-us%2Flibrary%2Fhh848302.aspx&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></span> </li> </ol></div></div> <div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2><span class="mw-editsection"><span class="mw-editsection-bracket">[</span><a href="/w/index.php?title=Comparison_of_command_shells&action=edit&section=27" title="Edit section: External links"><span>edit</span></a><span class="mw-editsection-bracket">]</span></span></div> <ul><li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite id="CITEREFNasarek2007" class="citation book cs1">Nasarek, Marcus (May 2007). <a rel="nofollow" class="external text" href="https://www.linux-magazine.com/content/download/63303/487727/version/1/file/Bash_vs._Vista_PowerShell.pdf">"Article"</a> <span class="cs1-format">(PDF)</span>. <a rel="nofollow" class="external text" href="https://www.linux-magazine.com/Issues/2007/78/Bash-vs.-Vista-PowerShell"><i>Comparing Bash with the Windows Vista shell: Shell Games</i></a>. <a href="/wiki/Linux_Magazine" title="Linux Magazine">Linux Magazine</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141010000744/http://w3.linux-magazine.com/issue/78/Bash_vs._Vista_PowerShell.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on 2014-10-10.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=bookitem&rft.atitle=Article&rft.btitle=Comparing+Bash+with+the+Windows+Vista+shell%3A+Shell+Games&rft.pub=Linux+Magazine&rft.date=2007-05&rft.aulast=Nasarek&rft.aufirst=Marcus&rft_id=https%3A%2F%2Fwww.linux-magazine.com%2Fcontent%2Fdownload%2F63303%2F487727%2Fversion%2F1%2Ffile%2FBash_vs._Vista_PowerShell.pdf&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></li> <li><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1238218222"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://pubs.opengroup.org/onlinepubs/9799919799/utilities/contents.html">"Shell and Utilities"</a>. <i>IEEE Standard for Information Technology 1003.1™-2024 – Portable Operating System Interface POSIX™.1-2024 — The Open Group Base Specifications Issue 8</i> (2024 ed.). The IEEE and The Open Group. 2024-08-08.</cite><span title="ctx_ver=Z39.88-2004&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=unknown&rft.jtitle=IEEE+Standard+for+Information+Technology+1003.1%E2%84%A2-2024+%E2%80%93+Portable+Operating+System+Interface+POSIX%E2%84%A2.1-2024+%E2%80%94+The+Open+Group+Base+Specifications+Issue+8&rft.atitle=Shell+and+Utilities&rft.date=2024-08-08&rft_id=https%3A%2F%2Fpubs.opengroup.org%2Fonlinepubs%2F9799919799%2Futilities%2Fcontents.html&rfr_id=info%3Asid%2Fen.wikipedia.org%3AComparison+of+command+shells" class="Z3988"></span></li></ul> <div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}</style><style data-mw-deduplicate="TemplateStyles:r1236075235">.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}</style></div><div role="navigation" class="navbox" aria-labelledby="Unix_shells" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><link rel="mw-deduplicated-inline-style" href="mw-data:TemplateStyles:r1129693374"><style data-mw-deduplicate="TemplateStyles:r1239400231">.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}</style><div class="navbar plainlinks hlist navbar-mini"><ul><li class="nv-view"><a href="/wiki/Template:Unix_shells" title="Template:Unix shells"><abbr title="View this template">v</abbr></a></li><li class="nv-talk"><a href="/wiki/Template_talk:Unix_shells" title="Template talk:Unix shells"><abbr title="Discuss this template">t</abbr></a></li><li class="nv-edit"><a href="/wiki/Special:EditPage/Template:Unix_shells" title="Special:EditPage/Template:Unix shells"><abbr title="Edit this template">e</abbr></a></li></ul></div><div id="Unix_shells" style="font-size:114%;margin:0 4em"><a href="/wiki/Unix_shell" title="Unix shell">Unix shells</a></div></th></tr><tr><td colspan="2" class="navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"> <ul><li><a href="/wiki/Almquist_shell" title="Almquist shell">Almquist</a></li> <li><a href="/wiki/Bash_(Unix_shell)" title="Bash (Unix shell)">Bash</a></li> <li><a href="/wiki/Bourne_shell" title="Bourne shell">Bourne</a></li> <li><a href="/wiki/C_shell" title="C shell">csh</a></li> <li><a href="/wiki/Fish_(Unix_shell)" title="Fish (Unix shell)">fish</a></li> <li><a href="/wiki/Hamilton_C_shell" title="Hamilton C shell">Hamilton</a></li> <li><a href="/wiki/KornShell" title="KornShell">Korn</a></li> <li><a href="/wiki/PowerShell" title="PowerShell">PowerShell</a></li> <li><a href="/wiki/PWB_shell" title="PWB shell">PWB</a></li> <li><a href="/wiki/Qshell" title="Qshell">Qshell</a></li> <li><a href="/wiki/Rc_(Unix_shell)" title="Rc (Unix shell)">rc</a></li> <li><a href="/wiki/Stand-alone_shell" title="Stand-alone shell">sash</a></li> <li><a href="/wiki/Tcsh" title="Tcsh">tcsh</a></li> <li><a href="/wiki/Thompson_shell" title="Thompson shell">Thompson</a></li> <li><a href="/wiki/Wish_(Unix_shell)" title="Wish (Unix shell)">Wish</a></li> <li><a href="/wiki/Z_shell" title="Z shell">Zsh</a></li></ul> </div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div> <ul><li><a class="mw-selflink selflink">Comparison of command shells</a></li></ul> </div></td></tr></tbody></table></div> <!-- NewPP limit report Parsed by mw‐api‐ext.codfw.canary‐789f5f649f‐hfmpm Cached time: 20241203070101 Cache expiry: 2592000 Reduced expiry: false Complications: [vary‐revision‐sha1, show‐toc] CPU time usage: 1.457 seconds Real time usage: 1.675 seconds Preprocessor visited node count: 22501/1000000 Post‐expand include size: 450099/2097152 bytes Template argument size: 73062/2097152 bytes Highest expansion depth: 15/100 Expensive parser function count: 27/500 Unstrip recursion depth: 1/20 Unstrip post‐expand size: 336156/5000000 bytes Lua time usage: 0.539/10.000 seconds Lua memory usage: 7284890/52428800 bytes Number of Wikibase entities loaded: 0/400 --> <!-- Transclusion expansion time report (%,ms,calls,template) 100.00% 1297.111 1 -total 30.08% 390.195 2 Template:Reflist 15.18% 196.918 640 Template:Yes 13.25% 171.874 46 Template:Cite_web 11.39% 147.789 417 Template:Mono 7.83% 101.574 1 Template:Short_description 7.64% 99.096 417 Template:Ifsubst 7.51% 97.420 3 Template:Citation 6.96% 90.288 1 Template:Multiple_issues 6.28% 81.475 1 Template:Unix_shells --> <!-- Saved in parser cache with key enwiki:pcache:1515407:|#|:idhash:canonical and timestamp 20241203070101 and revision id 1246083882. Rendering was triggered because: unknown --> </div><!--esi <esi:include src="/esitest-fa8a495983347898/content" /> --><noscript><img src="https://login.wikimedia.org/wiki/Special:CentralAutoLogin/start?type=1x1&useformat=desktop" alt="" width="1" height="1" style="border: none; position: absolute;"></noscript> <div class="printfooter" data-nosnippet="">Retrieved from "<a dir="ltr" href="https://en.wikipedia.org/w/index.php?title=Comparison_of_command_shells&oldid=1246083882">https://en.wikipedia.org/w/index.php?title=Comparison_of_command_shells&oldid=1246083882</a>"</div></div> <div id="catlinks" class="catlinks" data-mw="interface"><div id="mw-normal-catlinks" class="mw-normal-catlinks"><a href="/wiki/Help:Category" title="Help:Category">Categories</a>: <ul><li><a href="/wiki/Category:Unix_shells" title="Category:Unix shells">Unix shells</a></li><li><a href="/wiki/Category:Command_shells" title="Category:Command shells">Command shells</a></li><li><a href="/wiki/Category:Software_comparisons" title="Category:Software comparisons">Software comparisons</a></li></ul></div><div id="mw-hidden-catlinks" class="mw-hidden-catlinks mw-hidden-cats-hidden">Hidden categories: <ul><li><a href="/wiki/Category:CS1_French-language_sources_(fr)" title="Category:CS1 French-language sources (fr)">CS1 French-language sources (fr)</a></li><li><a href="/wiki/Category:Articles_with_short_description" title="Category:Articles with short description">Articles with short description</a></li><li><a href="/wiki/Category:Short_description_is_different_from_Wikidata" title="Category:Short description is different from Wikidata">Short description is different from Wikidata</a></li><li><a href="/wiki/Category:Articles_needing_additional_references_from_August_2011" title="Category:Articles needing additional references from August 2011">Articles needing additional references from August 2011</a></li><li><a href="/wiki/Category:All_articles_needing_additional_references" title="Category:All articles needing additional references">All articles needing additional references</a></li><li><a href="/wiki/Category:Wikipedia_neutral_point_of_view_disputes_from_October_2013" title="Category:Wikipedia neutral point of view disputes from October 2013">Wikipedia neutral point of view disputes from October 2013</a></li><li><a href="/wiki/Category:All_Wikipedia_neutral_point_of_view_disputes" title="Category:All Wikipedia neutral point of view disputes">All Wikipedia neutral point of view disputes</a></li><li><a href="/wiki/Category:Wikipedia_neutral_point_of_view_disputes_from_July_2014" title="Category:Wikipedia neutral point of view disputes from July 2014">Wikipedia neutral point of view disputes from July 2014</a></li><li><a href="/wiki/Category:Articles_with_multiple_maintenance_issues" title="Category:Articles with multiple maintenance issues">Articles with multiple maintenance issues</a></li><li><a href="/wiki/Category:Use_dmy_dates_from_May_2019" title="Category:Use dmy dates from May 2019">Use dmy dates from May 2019</a></li><li><a href="/wiki/Category:All_articles_with_unsourced_statements" title="Category:All articles with unsourced statements">All articles with unsourced statements</a></li><li><a href="/wiki/Category:Articles_with_unsourced_statements_from_December_2021" title="Category:Articles with unsourced statements from December 2021">Articles with unsourced statements from December 2021</a></li><li><a href="/wiki/Category:All_articles_lacking_reliable_references" title="Category:All articles lacking reliable references">All articles lacking reliable references</a></li><li><a href="/wiki/Category:Articles_lacking_reliable_references_from_April_2015" title="Category:Articles lacking reliable references from April 2015">Articles lacking reliable references from April 2015</a></li><li><a href="/wiki/Category:Articles_lacking_reliable_references_from_May_2015" title="Category:Articles lacking reliable references from May 2015">Articles lacking reliable references from May 2015</a></li></ul></div></div> </div> </main> </div> <div class="mw-footer-container"> <footer id="footer" class="mw-footer" > <ul id="footer-info"> <li id="footer-info-lastmod"> This page was last edited on 16 September 2024, at 20:11<span class="anonymous-show"> (UTC)</span>.</li> <li id="footer-info-copyright">Text is available under the <a href="/wiki/Wikipedia:Text_of_the_Creative_Commons_Attribution-ShareAlike_4.0_International_License" title="Wikipedia:Text of the Creative Commons Attribution-ShareAlike 4.0 International License">Creative Commons Attribution-ShareAlike 4.0 License</a>; additional terms may apply. By using this site, you agree to the <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Terms_of_Use" class="extiw" title="foundation:Special:MyLanguage/Policy:Terms of Use">Terms of Use</a> and <a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy" class="extiw" title="foundation:Special:MyLanguage/Policy:Privacy policy">Privacy Policy</a>. Wikipedia® is a registered trademark of the <a rel="nofollow" class="external text" href="https://wikimediafoundation.org/">Wikimedia Foundation, Inc.</a>, a non-profit organization.</li> </ul> <ul id="footer-places"> <li id="footer-places-privacy"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Privacy_policy">Privacy policy</a></li> <li id="footer-places-about"><a href="/wiki/Wikipedia:About">About Wikipedia</a></li> <li id="footer-places-disclaimers"><a href="/wiki/Wikipedia:General_disclaimer">Disclaimers</a></li> <li id="footer-places-contact"><a href="//en.wikipedia.org/wiki/Wikipedia:Contact_us">Contact Wikipedia</a></li> <li id="footer-places-wm-codeofconduct"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Universal_Code_of_Conduct">Code of Conduct</a></li> <li id="footer-places-developers"><a href="https://developer.wikimedia.org">Developers</a></li> <li id="footer-places-statslink"><a href="https://stats.wikimedia.org/#/en.wikipedia.org">Statistics</a></li> <li id="footer-places-cookiestatement"><a href="https://foundation.wikimedia.org/wiki/Special:MyLanguage/Policy:Cookie_statement">Cookie statement</a></li> <li id="footer-places-mobileview"><a href="//en.m.wikipedia.org/w/index.php?title=Comparison_of_command_shells&mobileaction=toggle_view_mobile" class="noprint stopMobileRedirectToggle">Mobile view</a></li> </ul> <ul id="footer-icons" class="noprint"> <li id="footer-copyrightico"><a href="https://wikimediafoundation.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/static/images/footer/wikimedia-button.svg" width="84" height="29" alt="Wikimedia Foundation" loading="lazy"></a></li> <li id="footer-poweredbyico"><a href="https://www.mediawiki.org/" class="cdx-button cdx-button--fake-button cdx-button--size-large cdx-button--fake-button--enabled"><img src="/w/resources/assets/poweredby_mediawiki.svg" alt="Powered by MediaWiki" width="88" height="31" loading="lazy"></a></li> </ul> </footer> </div> </div> </div> <div class="vector-settings" id="p-dock-bottom"> <ul></ul> </div><script>(RLQ=window.RLQ||[]).push(function(){mw.config.set({"wgHostname":"mw-web.codfw.main-5857dfdcd6-g4jkj","wgBackendResponseTime":183,"wgPageParseReport":{"limitreport":{"cputime":"1.457","walltime":"1.675","ppvisitednodes":{"value":22501,"limit":1000000},"postexpandincludesize":{"value":450099,"limit":2097152},"templateargumentsize":{"value":73062,"limit":2097152},"expansiondepth":{"value":15,"limit":100},"expensivefunctioncount":{"value":27,"limit":500},"unstrip-depth":{"value":1,"limit":20},"unstrip-size":{"value":336156,"limit":5000000},"entityaccesscount":{"value":0,"limit":400},"timingprofile":["100.00% 1297.111 1 -total"," 30.08% 390.195 2 Template:Reflist"," 15.18% 196.918 640 Template:Yes"," 13.25% 171.874 46 Template:Cite_web"," 11.39% 147.789 417 Template:Mono"," 7.83% 101.574 1 Template:Short_description"," 7.64% 99.096 417 Template:Ifsubst"," 7.51% 97.420 3 Template:Citation"," 6.96% 90.288 1 Template:Multiple_issues"," 6.28% 81.475 1 Template:Unix_shells"]},"scribunto":{"limitreport-timeusage":{"value":"0.539","limit":"10.000"},"limitreport-memusage":{"value":7284890,"limit":52428800}},"cachereport":{"origin":"mw-api-ext.codfw.canary-789f5f649f-hfmpm","timestamp":"20241203070101","ttl":2592000,"transientcontent":false}}});});</script> <script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Article","name":"Comparison of command shells","url":"https:\/\/en.wikipedia.org\/wiki\/Comparison_of_command_shells","sameAs":"http:\/\/www.wikidata.org\/entity\/Q4438323","mainEntity":"http:\/\/www.wikidata.org\/entity\/Q4438323","author":{"@type":"Organization","name":"Contributors to Wikimedia projects"},"publisher":{"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":{"@type":"ImageObject","url":"https:\/\/www.wikimedia.org\/static\/images\/wmf-hor-googpub.png"}},"datePublished":"2005-02-17T00:47:46Z","dateModified":"2024-09-16T20:11:30Z","image":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/e\/e7\/Bash_screenshot.png","headline":"Wikimedia list article"}</script> </body> </html>