lackadaisical/what
Sam Hardeman 160a7763b7 - Minor cleanup
- Change shebangs to use 'env' in prep for NixOS (and others)
- `agenda` now has a symlink to the underlying tree structure named ".tree"
- `binbox` has more checking, being prepped for automatic export of symlinks.
- `cdz` now symlinks to the archive directory using "<archive name>.tmp". This is less confusing than a randomized extraction folder, and adds the benefit of being in the FS-tree of the original archive.
- daisy.source changes:
> Added basic debug mode.
> `ched` can now set global (all of the shell) editor or local (lackadaisical utils only) editor.
> The encoding/decoding functions have been expanded and improved. Extra checking, permissions are stored as well, `daisy_dec` can handle stdin.
- Added new functions to manage lackadaisical config: daisy_backup (runs `bak` on config files), daisy_clear (removes config files), and daisy_restore (restores config files archived using bak).
- All functions/tools prefixed with 'daisy_' are now also available prefixed with 'ld_' instead
- Added a new utility, `clip`. This utility keeps a local variable that can be set if given args and get if no args are supplied. Basically a simple clipboard local to the ptty. Supports stdin.
2026-01-25 18:23:05 +01:00

32 lines
657 B
Bash
Executable file

#!/usr/bin/env bash
# Where is the binary?
# Usage: what [<keyword>]
# Returns:
# With no parameters, all visible binaries in PATH.
# With parameter, all binaries that match the pattern
# given. Accepts default grep patterns, case insensitive
#
# Examples:
# $ what zs.*
# pzstd
# zsh
# zstd
#
# $ what ftp
# ftppass
# sftp
# vsftpd
#
# $ what ftp | xargs which
# /usr/bin/ftppass
# /usr/bin/sftp
# /usr/sbin/vsftpd
#
LD_INTERNAL=1
. $(dirname $(realpath $0))/daisy.source
pwd=/
all_bins=$(cd / && echo $PATH | sed 's/[:]/ /g' | xargs ls -A | grep -v ":" | sort | uniq)
output=$(printf '%s\n' "-n" $all_bins | grep -i "$1")
echo "$output"