[РЕШЕНО]Помогите написать сценарий

Есть обычный конфиг torrc по пути:
$HOME/tor-browser_en-US/Browser/TorBrowser/Data/Tor/torrc
В этом конфиге 8 строкой указана выходная нода, предположим так:
ExitNodes {US}
Довольно часто приходится указывать другую ноду: LT, LV, ES, DE
Можно ли как-то автоматизировать процесс баш-скриптом, т. е. запуск скрипта, затем запрос редактирования этой переменной, т. е. страны, ввод, к примеру RU, ENTER. Все от пользвователя, рут не нужен. Оболочка bush.
Подскажите, хотя-бы в какую сторону копать. Спасибо.
iradia
Оболочка bush.
Подскажите, хотя-бы в какую сторону копать.
man bash
Для начала)))
Lupus pilum mutat, non mentem.
jim945
man bash
Для начала)))
Весьма информативно, благодарю. Если Вы спросили меня о колифагах, а я отослала вас с справочнику по иммунологии нуклеиновых кислот, то вам бы понравилось? Умничать я тоже умею. Thank you, anyway.
iradia
Если Вы спросили меня о колифагах, а я отослала вас с справочнику по иммунологии нуклеиновых кислот, то вам бы понравилось?
Да. Что толку объяснять человеку, не знающему азов и терминологии определённой тематики, что-то более высокоуровневое?
И, если ваш отсыл поможет мне понять основы для решения основного вопроса, то он верен.
Lupus pilum mutat, non mentem.
iradia
информативно
Ну вот для anyway статейка там примеры
https://habr.com/ru/post/126701/
Вам {US} надо задавать переменной, потом спрашивать что присвоить этой переменной в зависимости от ввода присваивать значение
iradia
Можно ли как-то автоматизировать процесс баш-скриптом
Можно - способов много, предлагаю самый простой - не нужно ничего искать и менять.
Я в таких случаях, если файл (в данном случае torrc) не большой, использую простой способ - не занимаюсь поиском в файле нужных слов, которые нужно или заменить или удалить или что то другое - я просто пишу отдельные файлы, например, в данном случае для каждой страны пишем отдельный файл и называем их чтобы не путаться типа такого: torrc_us … torrc_ca и так далее - пишем скрипт, который этими файлами будет заменять рабочий torrc по нашему требованию. Вешаем скрипт на комбинацию клавиш и вызываем его в нужный момент
#!/bin/bash
# очищем на всякий случай файл ~/.tor-browser/.../torrc
cp /dev/null ~/.tor-browser/.../torrc
read -p "...................
   Выбираем страну
...................
 Канада    - 1
 Америка   - 2
 Ххххххх   - 3
 ...вводим цифру...: " N
case "$N" in
      1) cat ~/torrc_ca > ~/.tor-browser/.../torrc
      ;;
      2) cat ~/torrc_us > ~/.tor-browser/.../torrc
      ;;
      3) cat ~/torrc_xx > ~/.tor-browser/.../torrc
      ;;
      *) echo "$N отсутствует"
         exit
      ;;
esac
exit 0
В данном скрипте нет перезапуска браузера - это на Ваше усмотрение … скрипт рабочий, только нужно изменить путь для torrc

PS - такого типа скрипт использую в качестве консольного DM - для выбора загрузки WM/DE по startx ...
Ошибки не исчезают с опытом - они просто умнеют
Если менять только одну строку, а не несколько, то проще так
#!/bin/bash
read -p "...................
   Выбираем страну
...................
 Канада    - 1
 Америка   - 2
 Ххххххх   - 3
 ...вводим цифру...: " N
case "$N" in
      1) sed -i 's/.*ExitNodes.*/ExitNodes {ca}/' ~/.../torrc
      ;;
      2) sed -i 's/.*ExitNodes.*/ExitNodes {us}/' ~/.../torrc
      ;;
      3) sed -i 's/.*ExitNodes.*/ExitNodes {xx}/' ~/.../torrc
      ;;
      *) echo "$N отсутствует"
         exit
      ;;
esac
exit 0
Ошибки не исчезают с опытом - они просто умнеют
vasek
Можно - способов много…
Благодарю за помощь. Заодно и разобралась, как это работает.
 
Зарегистрироваться или войдите чтобы оставить сообщение.