Вместо этого вы можете зарегистрировать соединение с помощью NetworkManager.
У меня другие настройки. Я на Ubuntu с модемом gsm .
Создать соединение
sudo nmcli c add con-name "mycon" type gsm ifname "*" apn "internet.t-d1.de"
Установить автоподключение
sudo nmcli c mod mycon connection.autoconnect yes
Имя пользователя и пароль
sudo nmcli c mod mycon gsm.username "t-mobile"
sudo nmcli c mod mycon gsm.password "tm"
В Ubuntu файл конфигурации NetworkManager находится в папке /etc/NetworkManager/system -Connections/.
sudo cat /etc/NetworkManager/system-connections/mycon
Запустить соединение
sudo nmcli c up mycon
Теперь соединение должно установиться автоматически.
Подойдет что-то вроде этого:
for fa in A/*; do
highest_pm=0
for fb in B/*; do
num_identical_lines=$(diff --unchanged-group-format='%<' --old-group-format='' --new-group-format='' --changed-group-format='' "$fa" "$fb" | wc -l)
num_lines_file_a=$(wc -l < "$fa")
# save permille of matching lines
pm=$((1000*num_identical_lines/num_lines_file_a))
# compare with highest permille
if [ $pm -gt $highest_pm ]; then
highest_pm=$pm
best_match="$fb"
fi
done
# output
[ $highest_pm -gt 0 ] \
&& printf "File %s best matches File %s with %d %% of identical lines.\n" "$fa" "$best_match" $((highest_pm/10)) \
|| printf "File %s has no match\n" "$fa"
done
Оценка num _идентичных _строк основана на этом ответе .
Остальное — просто цикл по файлам, некоторое сравнение и некоторый вывод;-)
Выход:
File A/file2 has no match
File A/filea best matches File B/fileb with 50 % of identical lines.