Оставить только несколько цифр десятичной части

Después de usar la RAM, usará el intercambio, y después de consumir todo el intercambio, es probable que veas la salida -de -del asesino de la memoria, lo que rara vez es algo bueno.

Si no confía en la aplicación, vale la pena poner un límite en el tamaño máximo que puede consumir.

Ejemplo, limitando al 50% de RAM.

[root@localhost ~]# mount -o size=50% -t tmpfs none /mnt
[root@localhost ~]# df -h /mnt
Filesystem      Size  Used Avail Use% Mounted on
none            496M     0  496M   0% /mnt
[root@localhost ~]#

Ejemplo, limitando a 1,000,000 bytes.

[root@localhost ~]# mount -o size=1000000 -t tmpfs none /mnt
[root@localhost ~]# df -h /mnt
Filesystem      Size  Used Avail Use% Mounted on
none            980K     0  980K   0% /mnt
[root@localhost ~]#

Más información enhttps://linux.die.net/man/8/mount

Como preguntó específicamente sobre el uso de tmpfs en OTRS, consulte tambiénhttps://doc.otrs.com/doc/manual/admin/stable/en/html/performance-tuning.html#performance-tuning-otrs-cache(se relaciona específicamente con OTRS v6, pero las versiones anteriores tienen enfoques similares, pero no idénticos)

shell> /opt/otrs/bin/otrs.Console.pl Maint::Session::DeleteAll
shell> /opt/otrs/bin/otrs.Console.pl Maint::Cache::Delete
shell> sudo mount -o size=16G -t tmpfs none /opt/otrs/var/tmp

# add persistent mount point in /etc/fstab

0
29.05.2019, 21:40
6 ответов

Использованиеawk:

awk -F[,.] '{print $1","$2","substr($4,1,3)","substr($6,1,3)}' file

Где -Fиспользуется для установки значений FSна запятую ,и точку .

.

substrнапечатает 3 цифры после точки.

1
28.01.2020, 02:14

как? Почему не питон?

import csv
filename = <yourfilenamehere>

for line in list(csv.reader(open(filename, 'r'))):
    extra = [str(int((abs(float(num)) % 1) * 1000)).zfill(3) for num in line[2:]]
    print(*(line[:2] + extra), sep=',')
1
28.01.2020, 02:14

Использованиеsed:

sed -E 's/(^|,)[^\.][^,]*\.(...)[^,]*/\1\2/g' infile
1
28.01.2020, 02:14
sed 's/-\{,1\}[0-9]*\.\([0-9]\{,3\}\)[0-9]*/\1/g' file

Это ищет строки, начинающиеся с необязательного -, за которым следует любое количество цифр, за которым следует точка, за которой следует любое количество цифр, из которых будут выбраны первые три.

Другой способ — заменить [0-9]на [[:digit:]]как

sed 's/-\{,1\}[[:digit:]]*\.\([[:digit:]]\{,3\}\)[[:digit:]]*/\1/g' file
2
28.01.2020, 02:14
$ perl -lne 'print join " ", /\.\K(...)/g' file
1
28.01.2020, 02:14

Я попытался использовать метод awk ниже

команда

awk -F "," 'OFS=","{print $1,$2,substr($3,4,3),substr($4,3,3) filename

выход

2,0,843,001
3,1,739,692
1,1,700,554
0
28.01.2020, 02:14

Теги

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