Usando awk
basado enRS
(separador de registro):
VAR3=$(awk '
BEGIN{RS="[,\n]";FS=":";ORS=","}
NR==FNR{a[tolower($1)]=$2}
NR>FNR{printf "%s\047%s\047",(FNR>1?ORS:""),(a[$1]?a[$1]:$1)}
' <(echo "$VAR1") <(echo "$VAR2")
)
La matriz a
se llena con el contenido de VAR1
con el par clave y valor. Este se usa cuando se analiza la segunda variable y el valor se reemplaza si existe una entrada de matriz.
Я не знаю, какой символ вы вводите -
, но он неправильный. Вы должны использовать простой символ минус/дефис/тире, но, похоже, вы используете какое-то более длинное тире:
–t incorrect
-t correct
На моей британской клавиатуре это клавиша между 0 и = , используемая без сдвига.