Ruby удобен для разбора CSV:
ruby -rcsv -ne 'puts CSV.generate_line(CSV.parse_line($_), :col_sep=>"|")' file
prabhat,kumar|19|2000|bangalore,India|ABC,DEF|GHI|123|KLM|NOP,QRS
prabhat,kumar|19|2000|bangalore,India|ABC,DEF|GHI|123|KLM|NOP,QRS
Обратите внимание, что на выходе нет кавычек. Это связано с тем, что ни одно из полей не содержит разделителя полей. Если вам нужны кавычки, вы можете принудительно заключить в кавычки все поля (даже целые числа):
ruby -rcsv -ne 'puts CSV.generate_line(CSV.parse_line($_), :col_sep=>"|",:force_quotes=>true)' file
"prabhat,kumar"|"19"|"2000"|"bangalore,India"|"ABC,DEF"|"GHI"|"123"|"KLM"|"NOP,QRS"
"prabhat,kumar"|"19"|"2000"|"bangalore,India"|"ABC,DEF"|"GHI"|"123"|"KLM"|"NOP,QRS"
Это необходимо, если используется DHCP v6 из-за несколько отличающегося способа работы DHCP в v4 и v6.
В DHCP v4 клиент устанавливает соединение с сервером, и из-за правил по умолчанию, разрешающих «установленные» соединения обратно через брандмауэр, обратный ответ DHCP разрешен через.
Однако в DHCP v6 начальный запрос клиента отправляется на статически назначенный адрес многоадресной рассылки, в то время как ответ имеет адрес одноадресной рассылки DHCP-сервера в качестве источника (см. RFC 3315 ). Поскольку источник теперь отличается от места назначения исходного запроса, правило «setted» не разрешает его прохождение и, следовательно, DHCP v6 завершится ошибкой.
Для борьбы с этим было создано новое правило firewalld
под названием dhcpv6-client
, которое позволяет передавать входящие ответы DHCP v6 - это правило dhcpv6-client
. Если в сети не запущен DHCP v6 или используется статическая IP-адресация, ее можно отключить.
Это Замена и/или расширение параметров . По ссылке
${var#Pattern}
Удалите из $ var самую короткую часть $ образец, соответствующую передней стороне $ var.
${var##Pattern}
Удалите из $ var самую длинную часть $ образец, которая соответствует передней стороне $ var.
Поэтому $ {text # # */}
удалить из текста все, что было до последнего /
. Полезно получить, например, базовое имя каталогов.
(Существует также $ {var% Образца}
/ $ {var% Образца}
для удаления образца, соответствующего бэкэнду $ var
)
Похоже, вы путаетесь между пользователем pi
и группой pi
. Нельзя добавлять группу в группу, только пользователи. Существует группа с тем же именем, что и пользователь, группы, в которых пользователь находится, не влияют на пользователей, входящих в группу.