J'ai écrit la commande suivante afin de faire correspondre $ a avec $ b, mais lorsque la valeur inclut "-", je reçois une erreur. Comment puis-je éviter cela?
# a="-Xmx5324m"
# b="-Xmx5324m"
#
#
# echo "$a" | grep -Fxc "$b"
grep: conflicting matchers specified
[[ ... ]]
ou case
serait un meilleur choix, car vous évitez à la fois les particularités echo
et les processus enfants.
grep
comme un caractère littéral plutôt que le début d'une option, c'est-à-dire echo test-test | grep "\-test"
qu'il correspondra plutôt que de se plaindre d'un -t
indicateur inconnu .
grep -Fxc -- "$b" <<< "$a"
éviter le tuyau inutile