Преобразование букв в столбцах в числа

Le doy una respuesta, aunque no exactamente lo que usted pregunta.

Los puertos necesarios para las conexiones para instalar paquetes/hacer actualizaciones de seguridad suelen ser 80/TCP y 443/TCP; las direcciones dependen de los repositorios que esté utilizando.

Sin embargo, si usa un proxy, en lugar de monitorear/seleccionar direcciones, sería más inteligente incluirlo en la lista blanca en las conexiones proxy APT o YUM (p. por aplicación ).

En cuanto a la supervisión, puede usar tcpdumpmientras realiza actualizaciones de seguridad e instala paquetes como en:

sudo tcpdump port 80 or port 443

Sin embargo, tenga en cuenta que, según el nombre de los repositorios que esté utilizando, algunos nombres de repositorios pueden traducirse en más de una dirección IP.

En cuanto al uso de la red, no es significativo si se trata de un solo sistema; sin embargo, varía según las actualizaciones que se instalen. Lo monitorearía con el tiempo con SNMP y cactus. También puede intentar usar iftop, pero, de nuevo, tales medidas serán inútiles.

Yendo al grano, los datos de tráfico deben ser estimados/adivinados o medidos durante meses.

-3
14.07.2016, 17:51
4 ответа
  1. Разрежьте столбцы на два набора: один с первым столбцом, а другой - со вторым и третьим столбцами.

  2. Транслитерируйте символы в цифры во втором из этих наборов.

  3. Снова склейте все вместе.

В командной строке:

$ cat data
Id_animal / Column1 / Column2
ID01 / A / B
ID02 / B / A
ID03 / C / A
ID04 / A / G
ABCG / G / G

$ paste -d '/' <(cut -d '/' -f 1 data) <(cut -d '/' -f 2,3 data | tr 'ABCG' '1234')
Id_animal / 3olumn1 / 3olumn2
ID01 / 1 / 2
ID02 / 2 / 1
ID03 / 3 / 1
ID04 / 1 / 4
ABCG / 4 / 4

Вы получаете бонусные цифры в заголовке ...: -)

2
28.01.2020, 05:18

При условии, что вы хотите перевести только A, B, C и G в 1, 2, 3 и 4, и что первый столбец никогда не содержит этих букв, вы можете упростить ответ bgStack15 до:

tr 'ABCG' '1234' < input > output
1
28.01.2020, 05:18

С perl вы можете применять транслитерацию к определенным входным столбцам с помощью ] карта например

perl -F"/" -alne 'print join "/", @F[0], map { tr/ABCG/1234/; $_ } @F[1,2]' input

Например, при вводе

Id_animal / Column1 / Column2
ID01 / A / B
ID02 / B / A
AG02 / B / A
ID03 / C / A
ID04 / A / G

, затем

$ perl -F"/" -alne 'print $. == 1? $_ : join "/", @F[0], map { tr/ABCG/1234/; $_ } @F[1,2]' input
Id_animal / Column1 / Column2
ID01 / 1 / 2
ID02 / 2 / 1
AG02 / 2 / 1
ID03 / 3 / 1
ID04 / 1 / 4
0
28.01.2020, 05:18

Отрегулируйте переменные по желанию. Сохраните это в файл, например `/home/Amanda/script.sh

#!/bin/sh
infile=~/input.txt
outfile=~/output.txt
while read one two; do
   printf "%s %s\n" "${one}" "$( echo "${two}" | tr 'ABCG' '1234' )"
done < ${infile} > ${outfile}

Обязательно сделайте скрипт исполняемым: chmod +x /home/Amanda/script.sh

0
28.01.2020, 05:18

Теги

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