Линия печати и следующий текст на основе сопоставления с рисунком

Что ж, этот доступ «у меня нет root» на сервере A может стать проблемой для создания хорошего решения VPN, поскольку:

  • туннелирование ip-ip требует манипуляции с интерфейсом;
  • pptp также требуются привилегии root для создания интерфейсов;
  • OpenVPN может работать даже от имени непривилегированного пользователя, но необходимо проделать некоторые уловки, например разрешить sudo команде ip , чтобы разрешить создание tun интерфейс;
  • strongSwan с ограниченными привилегиями требует для работы CAP_NET_ADMIN или CAP_NET_RAW , а запуск демона IKE от имени пользователя без полномочий root нарушает поддержку сценария обновления iptables.

Что вам остается, друг мой: положитесь на SSH socks прокси . На локальном компьютере и от имени пользователя root выполните:

ssh -C2qTnN -D 8080 username@serverA

Средство : Сжатие, только SSH2, Тихо, Принудительное выделение псевдо-tty, Перенаправить stdin из / dev / null и Поместить клиент ssh в " master "режим совместного использования соединения.

Теперь все, что вам нужно сделать, это запустить приложение. Если он имеет встроенную поддержку SOCKSv5, такую ​​как Firefox, просто нужно настроить «localhost: 8080» в качестве прокси-сервера.

Если ваше приложение изначально не поддерживает этот прокси, запустите его с помощью proxychains . Просто установите на свой клиент, и все готово.

Единственное решение, которое вы не хотите принимать, к сожалению, кажется единственным.

Ссылки:

0
26.11.2018, 23:20
1 ответ

Я сделал это с помощью awk, grep и sed. Предполагая, что в исходном файле нет конечных пробелов.

awk 'NR>1&&/>/{print ""}{printf " %s", $0}END{print ""}' file |grep chr|sed 's/^ //' |sed 's/^.*chr/>chr/' |awk 'BEGIN{OFS="\n";}{print $1,$2,$3,$4}'

Во-первых, сгруппируйте начальные строки с помощью '>' и предваряйте каждое поле пробелом

 >text chr1 AAA BBA AAA
 >additional text chr2 ABA AAA CCC TTT
 >some text chr3 TTT CCC TCT
 >no good text 1 3 AAA CCC TCT
 >unimportant text 2 3 3 ACC CCC TCT

Во-вторых, отфильтруйте все строки, содержащие подстроку "chr"

 >text chr1 AAA BBA AAA
 >additional text chr2 ABA AAA CCC TTT
 >some text chr3 TTT CCC TCT

в-третьих, удалить все начальные пробелы

>text chr1 AAA BBA AAA
>additional text chr2 ABA AAA CCC TTT
>some text chr3 TTT CCC TCT

в-четвертых, удалить все символы между ">" и "chr"

>chr1 AAA BBA AAA
>chr2 ABA AAA CCC TTT
>chr3 TTT CCC TCT

и, наконец, используйте awk для печати всех строк с "\n" в качестве разделителя выходного файла

>chr1
AAA
BBA
AAA
>chr2
ABA
AAA
CCC
>chr3
TTT
CCC
TCT
0
28.01.2020, 04:08

Теги

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