awk '{gsub(/\./,"")sub(/,/," "); print $1"00",$2}' file
(45679900 567898)
(56783300 673434)
Возможно, вы захотите изучить OverlayFS . Оверлейная файловая система позволит вам объединить точку монтирования диска и точку монтирования вашего виртуального диска в одну файловую систему (— оверлей ).
OverlayFS работает с копией -при записи -, поэтому, если ваш верхний уровень является пустым виртуальным диском во время загрузки, данные будут записываться на виртуальный диск только тогда, когда вы открываете файлы с разрешениями на запись. Теоретически вы можете touch
скопировать в оперативную память любой из файлов, который захотите.
Хотя, должен добавить, в Linux уже есть надежное дисковое кэширование . Вы можете хотеть удостовериться, что Вы не изобретаете велосипед здесь.
Это не ответ на ваш вопрос, но может помочь решить описанную проблему. Вы хотите
store a copy of the disk contents in memory to speed up the processing time required.
Вам не нужно ничего делать. Это происходит по умолчанию.
Попробуйте сами:
dd if=/dev/urandom bs=1M count=1M of=test.bin # create a file of 10 GB random data
echo 3 | sudo tee /proc/sys/vm/drop_caches # drop caches
dd if=test.bin bs=1G count=1 of=/dev/null # read 1 GB of data
dd if=test.bin bs=1G count=1 of=/dev/null # read again
Первое чтение занимает некоторое время:
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 10,43 s, 103 MB/s
После первого чтения данные остаются в памяти. Последующие чтения выполняются намного быстрее:
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.320478 s, 3.4 GB/s
Linux с радостью поддержит ваши усилия, сохраняя содержимое недавно прочитанного файла -в памяти до тех пор, пока имеется достаточно свободной памяти.