PsBash
0.7.6
Real bash commands for PowerShell with typed objects. 69 commands (ls, grep, sort, awk, sed, jq, find, ps, du, tar, etc.) that accept real bash flags and return structured PowerShell objects while producing identical text output. Pipeline bridge pattern preserves typed objects through grep, sort, head, tail.
Minimum PowerShell version
7.0
Installation Options
Owners
Copyright
(c) Andy Brummer. All rights reserved.
Package Details
Author(s)
- Andy Brummer
Tags
bash linux cross-platform cli grep awk sed jq pipeline typed-objects powershell-module devops unix shell commands windows macos
Functions
Set-BashErrorMode Invoke-ProcessSub Invoke-BashEcho Invoke-BashPrintf Get-BashPlatform New-BashObject Emit-BashLine ConvertFrom-BashArgs Expand-EscapeSequences New-FlagDefs Invoke-BashLs Get-BashFileInfo Format-BashSize Format-BashDate Format-LsLine Get-LsDisplayName Format-LsGrid ConvertTo-PermissionString Invoke-BashCat Get-BashText Invoke-BashGrep Invoke-BashSort ConvertFrom-HumanNumeric Compare-Version ConvertFrom-MonthName Invoke-BashHead Invoke-BashTail Invoke-BashWc Invoke-BashFind Invoke-BashStat Format-StatString Invoke-BashCp Invoke-BashMv Invoke-BashRm Invoke-BashMkdir Invoke-BashRmdir Invoke-BashTouch Invoke-BashLn Invoke-BashPs Get-LinuxProcEntry Get-DotNetProcEntry Format-PsAuxLine Format-PsCustomLine Invoke-BashSed ConvertFrom-SedExpression Test-SedAddress Invoke-BashAwk ConvertFrom-AwkProgram Split-AwkFields Test-AwkPattern Resolve-AwkExpression Invoke-AwkAction Format-AwkPrintf Resolve-AwkStringFunc Invoke-BashCut Invoke-BashTr Invoke-BashUniq Invoke-BashRev Invoke-BashNl Invoke-BashDiff Invoke-BashComm Invoke-BashColumn Invoke-BashJoin Invoke-BashPaste Invoke-BashTee Invoke-BashXargs Invoke-BashJq ConvertTo-JqJson Invoke-JqFilter Invoke-BashDate Convert-DateFormat Invoke-BashSeq Invoke-BashExpr Invoke-BashDu Invoke-BashTree Invoke-BashEnv Invoke-BashBasename Invoke-BashDirname Invoke-BashPwd Invoke-BashHostname Invoke-BashWhoami Invoke-BashUname Invoke-BashFold Invoke-BashExpand Invoke-BashUnexpand Invoke-BashStrings Invoke-BashSplit Invoke-BashTac Invoke-BashBase64 Invoke-BashMd5sum Invoke-BashSha1sum Invoke-BashSha256sum Invoke-BashFile Invoke-BashRg Invoke-BashGzip Invoke-BashTar Invoke-BashYq ConvertFrom-SimpleYaml ConvertFrom-YamlValue ConvertTo-SimpleYaml Invoke-BashXan Register-BashCompletions Test-BashHelpFlag Show-BashHelp Invoke-BashSleep Invoke-BashTime Invoke-BashWhich Invoke-BashAlias Invoke-BashTrap Invoke-BashReadlink Invoke-BashMktemp Invoke-BashType Invoke-BashBash Invoke-BashRedirect Invoke-BashBackground Invoke-BashWait Invoke-BashJobs Invoke-BashEval Invoke-BashRead Invoke-BashMapfile Invoke-BashShift Invoke-BashRealpath Invoke-BashCommand
PSEditions
Dependencies
This module has no dependencies.
Release Notes
v0.7.6: Fix remaining shell test failures caused by Console.IsInputRedirected auto-detection in ShellArgs.Parse. Move stdin detection to Program.cs with safe empty-stdin fallback to interactive mode. v0.7.5: Fix quoted executable paths with arguments by prefixing with & operator. Fix output loss on command timeout by introducing a background stdout reader in PwshWorker. v0.7.4: Fix ls/realpath directory desync after cd. v0.7.3: various fixes. v0.7.2: Fix $? after function return, read from pipe, eval crash, $! duplicate output. Add shift, realpath, command builtins. Fix trap EXIT, source .sh rewrite, grep PATH=, readonly scope, $- and $_ variable mappings.
FileList
- PsBash.nuspec
- PsBash.Format.ps1xml
- PsBash.psd1
- PsBash.psm1