Napisałem następujące polecenie, aby dopasować $ a do $ b, ale gdy wartość zawiera „-”, to pojawia się błąd. Jak mogę tego uniknąć?
# a="-Xmx5324m"
# b="-Xmx5324m"
#
#
# echo "$a" | grep -Fxc "$b"
grep: conflicting matchers specified
[[ ... ]]
lub case
byłoby lepszym wyborem, ponieważ można uniknąć zarówno dziwactw echo
i procesów potomnych.
grep
raczej jako dosłowny znak niż początek opcji, tzn. echo test-test | grep "\-test"
Będzie pasował, a nie narzekał na nieznaną -t
flagę.
grep -Fxc -- "$b" <<< "$a"
uniknąć niepotrzebnej rury