From 27577da287d57be67f3dc9be5e7d88430618893c Mon Sep 17 00:00:00 2001 From: Philip Wittamore Date: Sun, 18 May 2025 09:56:29 +0200 Subject: update --- STRINGS.html | 27 --------------------------- STRINGS.md | 30 ------------------------------ 2 files changed, 57 deletions(-) delete mode 100644 STRINGS.html delete mode 100644 STRINGS.md diff --git a/STRINGS.html b/STRINGS.html deleted file mode 100644 index 687456f..0000000 --- a/STRINGS.html +++ /dev/null @@ -1,27 +0,0 @@ -

Bash string manipulation cheatsheet

-

https://gist.github.com/magnetikonline/90d6fe30fc247ef110a1

-

| Assignment | | -| :--- | :--- | -| Assign value to variable if variable is not already set, value is returned. Combine with a : no-op to discard/ignore return value. | ${variable="value"} : ${variable="value"} | -| Removal | | -| Delete shortest match of needle from front of haystack. | ${haystack#needle} | -| Delete longest match of needle from front of haystack. | ${haystack##needle} | -| Delete shortest match of needle from back of haystack. | ${haystack%needle} | -| Delete longest match of needle from back of haystack. | ${haystack%%needle} | -| Replacement | | -| Replace first match of needle with replacement from haystack. | ${haystack/needle/replacement} | -| Replace all matches of needle with replacement from haystack. | ${haystack//needle/replacement} | -| If needle matches front of haystack replace with replacement. | ${haystack/#needle/replacement} | -| If needle matches back of haystack replace with replacement. | ${haystack/%needle/replacement} | -| Substitution | | -| If variable not set, return value, else variable. | ${variable-value} | -| If variable not set or empty, return value, else variable. | ${variable:-value} | -| If variable set, return value, else null string. | ${variable+value} | -| If variable set and not empty, return value, else null string. | ${variable:+value} | -| Extraction | | -| Extract length characters from variable starting at position. | ${variable:position:length} | -| Return string length of variable. | ${#variable} | -| Escaping | | -| Single quotes inside a single quoted string. | echo 'Don'\''t break my escape!' | -| Indirection | | -| Return value of variable name held in indirect, else value. | indirect="apple" apple="fruit" ${!indirect-value} |

diff --git a/STRINGS.md b/STRINGS.md deleted file mode 100644 index 464f887..0000000 --- a/STRINGS.md +++ /dev/null @@ -1,30 +0,0 @@ -# Bash string manipulation cheatsheet - -[https://gist.github.com/magnetikonline/90d6fe30fc247ef110a1](https://gist.github.com/magnetikonline/90d6fe30fc247ef110a1) - -| **Assignment** | | -| :--- | :--- | -| Assign `value` to `variable` if `variable` is not already set, `value` is returned.

Combine with a `:` no-op to discard/ignore return `value`. | `${variable="value"}`
`: ${variable="value"}` | -| **Removal** | | -| Delete shortest match of `needle` from front of `haystack`. | `${haystack#needle}` | -| Delete longest match of `needle` from front of `haystack`. | `${haystack##needle}` | -| Delete shortest match of `needle` from back of `haystack`. | `${haystack%needle}` | -| Delete longest match of `needle` from back of `haystack`. | `${haystack%%needle}` | -| **Replacement** | | -| Replace first match of `needle` with `replacement` from `haystack`. | `${haystack/needle/replacement}` | -| Replace all matches of `needle` with `replacement` from `haystack`. | `${haystack//needle/replacement}` | -| If `needle` matches front of `haystack` replace with `replacement`. | `${haystack/#needle/replacement}` | -| If `needle` matches back of `haystack` replace with `replacement`. | `${haystack/%needle/replacement}` | -| **Substitution** | | -| If `variable` not set, return `value`, else `variable`. | `${variable-value}` | -| If `variable` not set _or_ empty, return `value`, else `variable`. | `${variable:-value}` | -| If `variable` set, return `value`, else null string. | `${variable+value}` | -| If `variable` set _and_ not empty, return `value`, else null string. | `${variable:+value}` | -| **Extraction** | | -| Extract `length` characters from `variable` starting at `position`. | `${variable:position:length}` | -| Return string length of `variable`. | `${#variable}` | -| **Escaping** | | -| Single quotes inside a single quoted string. | `echo 'Don'\''t break my escape!'` | -| **Indirection** | | -| Return value of variable name held in `indirect`, else `value`. | `indirect="apple"`
`apple="fruit"`
`${!indirect-value}` | - -- cgit v1.2.3