Check out my first novel, midnight's simulacra!

Shell: Difference between revisions

From dankwiki
No edit summary
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 6: Line 6:


* stderr to pipe, without stdout: <tt>2>&1 >/dev/null |</tt>
* stderr to pipe, without stdout: <tt>2>&1 >/dev/null |</tt>
==Useful functions==
<syntaxhighlight lang="sh">
isnumber() {
  case "$1" in
    ''|*[!0-9]*) echo "not a number: $1" >&2 ; return 1 ; ;;
    *) return 0
  esac
}
</syntaxhighlight>

Latest revision as of 05:00, 9 November 2022

IFS

To set IFS to newline, use IFS=$'\n'. This allows find output containing horizontal whitespace to be picked up and used in e.g. for loop.

  • If you can use the output with xargs, then just use find's -print0 predicate and xargs's -0 option.

Redirects

  • stderr to pipe, without stdout: 2>&1 >/dev/null |

Useful functions

isnumber() {
  case "$1" in
    ''|*[!0-9]*) echo "not a number: $1" >&2 ; return 1 ; ;;
    *) return 0
  esac
}