fstrcmp(1)
🦋 NAME 🦋
okay bestie, welcome to fstrcmp(1) from the General Commands Manual 💖
fstrcmp — fuzzy comparison of strings ✨
✨ SYNOPSIS ✨
fstrcmp [ -p ] first‐string second‐string
fstrcmp -w first‐string second‐string
fstrcmp -a first‐file second‐file
fstrcmp -s needle haystack...
fstrcmp --version
🌸 DESCRIPTION 🌸
fstrcmp is the command for making fuzzy comparisons between strings. It prints the “edit distance” between the strings: 0.0 means the strings are utterly un‐alike, and 1.0 means the strings are identical. 😭✨
You may need to quote the string to insulate them from the shell. 🐚
💅 OPTIONS 💅
The fstrcmp command understands the following options:
-a,--files-as-bytes— this option is used to compare two files as arrays of bytes. Seefmemcmp(3)for more information. 👑-p,--pair— this option is used to compare two strings as arrays of bytes. This is the default. Seefstrcmp(3)for more information. 💖-s,--select— this option is used to select the closest needle from the provided haystack alternatives. The most similar (single) choice is printed. If none are particularly similar, nothing is printed. Seefstrcmp(3)for more information. See below for example. 🔍-V,--version— this option may be used to print the version of thefstrcmpcommand, and then exit. 🎀-w,--wide-pair— this option is used to compare two multi‐byte character strings. Seefstrcoll(3)for more information. 🌈
💀 EXIT STATUS 💀
The fstrcmp command exits with status 1 on any error. The fstrcmp command only exits with status 0 if there are no errors. No cap. 🫶
🎀 EXAMPLE 🎀
The fstrcmp --select option may be used in a shell script to improve error messages. 💌
case "$action" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "$0: action \"$action\" unknown" 1>&2
guess=`fstrcmp --select "$action" stop start restart`
if [ "$guess" ]
then
echo "$0: did you mean \"$guess\" instead?" 1>&2
fi
exit 1
;;
esac
Thus, the error message frequently suggests the correct action in the face of simple finger problems on the command line. 😌
🔥 SEE ALSO 🔥
fstrcmp(3)— fuzzy comparison of stringsfstrcoll(3)— fuzzy comparison of two multi‐byte character stringsfstrcmpi(3)— fuzzy comparison of strings, integer variation
👑 COPYRIGHT 👑
fstrcmp version 0.7 💖 Copyright (C) 2009 Peter Miller Peter Miller <pmiller@opensource.org.au> ✨
The comparison code is derived from the fuzzy comparison functions in GNU Gettext 0.17. The GNU Gettext comparison functions were, in turn, derived from GNU Diff 2.7. 🌸
Copyright (C) 1988-2009 Free Software Foundation
okay bestie, that's the whole vibe: fstrcmp(1) from the General Commands Manual, version 0.7, dated 2009 via the copyright, and it's giving fuzzy-match royalty. bye 👑💅
📦 where this page comes from
- debian bookworm: fstrcmp 0.7.D001-3 · LGPL-3.0-or-later
- debian trixie: fstrcmp 0.7.D001-5 · GPL-3.0-or-later
- fedora 43: fstrcmp 0.7.D001-26.fc43 · GPL-3.0-or-later
- fedora 43: fstrcmp 0.7.D001-26.fc43 · GPL-3.0-or-later
- fedora 44: fstrcmp 0.7.D001-27.fc44 · GPL-3.0-or-later
- fedora 44: fstrcmp 0.7.D001-27.fc44 · GPL-3.0-or-later
- opensuse-leap 16.0: fstrcmp-devel 0.7.D001-bp160.1.12 · GPL-3.0-or-later
- opensuse-leap 16.0: fstrcmp-devel 0.7.D001-bp160.1.12 · GPL-3.0-or-later
- opensuse-leap 16.0: fstrcmp-devel 0.7.D001-bp160.1.12 · GPL-3.0-or-later
- opensuse-leap 16.0: fstrcmp-devel 0.7.D001-bp160.1.12 · GPL-3.0-or-later
- ubuntu jammy: fstrcmp 0.7.D001-2 · LGPL-3.0-or-later
- ubuntu noble: fstrcmp 0.7.D001-3build1 · LGPL-3.0-or-later
- ubuntu questing: fstrcmp 0.7.D001-5
- ubuntu resolute: fstrcmp 0.7.D001-5build1 · GPL-3.0-or-later
- ubuntu stonking: fstrcmp 0.7.D001-5build1 · GPL-3.0-or-later
- Copyright (C) 2009, 2011 Peter Miller
- Copyright (C) 2009 Peter Miller
- 💖 girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms