Сравнение строк с разными кодировками

В Терминале введите следующее, чтобы активировать память учетных данных:

$ git config --global credential.helper cache

Вы можете обновить время ожидания кэша паролей по умолчанию (в секундах):

# This cache timeout is in seconds
$ git config --global credential.helper 'cache --timeout=3600' 

Вы также можете использовать (, но, пожалуйста, используйте одинарные кавычки, иначе двойные кавычки могут нарушаться для некоторых символов):

$ git config --global user.name 'your user name'
$ git config --global user.password 'your password'
1
25.09.2020, 17:39
1 ответ

Это должно быть возможно сделать полностью вawk:

awk -F':' -v ref_id="C000139-102" '$1=="ID" {if ($2==ref_id) print "Identical"; else print "WRONG"}' /dev/eeprom

Чтобы прочитать идентификатор в переменную оболочки, как в вашем примере скрипта:

eeprom_id=$(awk -F':' '$1=="ID" {print $2}')

Если, как подозревает @user414777, вы имеете дело с файлом в кодировке UTF -16 -, вам, возможно, придется использовать

cat /dev/eeprom | tr -d '\0' | awk -F':' -v ref_id="C000139-102" '$1=="ID" {if ($2==ref_id) print "Identical"; else print "WRONG"}'

или попробуйте

awk -F':' -v ref_id="C000139-102" '{gsub(/\x00/,""); if ($1=="ID") {if ($2==ref_id) print "Identical"; else print "WRONG"}}' /dev/eeprom

Опять же, чтобы прочитать идентификатор в переменную оболочки:

eeprom_id=$(cat /dev/eeprom | tr -d '\0' | awk -F':' '$1=="ID" {print $2}')

или

eeprom_id=$(awk -F':' '{gsub(/\x00/,""); if ($1=="ID") print $2}' /dev/eeprom)
0
18.03.2021, 23:02

Теги

Похожие вопросы