Дюжина полезных команд для дата-ботаников

В машинном обучении с большими данными нужно многое организовать. Имена, которые мы используем для управления данными, различаются:

Я представлю в этой статье десяток полезных команд, связанных с организацией данных, начиная с создания встроенных блоков кода medium.com, и переходя к управлению файлами, а затем к управлению процессами. Это лакомые кусочки, которые я постоянно гуглю или оставляю где-то в текстовом документе. Конечно, эти команды можно немного изменить для выполнения других задач. Они просто обычно хорошо иметь закладки где-нибудь. Надеюсь, это поможет вам.

  1. Сделать встроенный блок кода на medium.com
Ctrl + Alt + 6

Если вы не можете писать встроенные блоки кода, как показано выше, то вы не можете писать эту статью.

УПРАВЛЕНИЕ ФАЙЛАМИ

2. архивировать изображения

zip -0 -r filename.zip images/

Да, мне не стыдно признаться, что я часто просматриваю синтаксис zip store. Мне также нравится функция слабого кода/фрагмента текста.

3. Удалить повторяющиеся файлы

fdupes -rdN /root/images/

Приведенная выше команда удаляет дубликаты файлов в дереве каталогов с корнем /root/images/. Это очень полезно, когда вы копируете изображения или видео и хотите удалить дубликаты файлов.

4. Свернуть папки (победа)

for /r C:\Users\Daniel\Desktop\console %f in (*) do @move "%f" C:\Users\Daniel\Desktop\console

В Windows вы иногда возвращаете результаты парсинга в формате дерева файловой системы. Этот удобный маленький скрипт просто сводит все в один каталог. Итак, в этом примере все файлы в дереве папок в папке C:\Users\Daniel\Desktop\console перемещаются в C:\Users\Daniel\Desktop\console. >. Красиво и плоско.

5. Удалить пустые файлы

find /root/images/ -size 0 -delete

Часто скребки возвращают пустые результаты. Это может быть что угодно, от разрыва соединения во время очистки до просто пустого файла. Чтобы удалить их из набора данных, расположенного, например, в /root/images/, просто запустите этот скрипт, и пустых файлов больше не будет.

6. Массовое переименование файлов
https://ss64.com/bash/mmv.html

Инструмент mmv перемещает набор файлов, соответствующих определенному шаблону. Его можно использовать для выборочного перемещения, переименования, разделения наборов данных и многого другого. Я не буду приводить конкретный пример mmv, потому что их слишком много, чтобы выбрать из них. Посмотрите справочную страницу для mmv или ссылку выше.

7. Удалить пробелы в именах файлов

find -name "* *" -type f | rename 's/ /_/g'

Многим инструментам не нравятся пробелы пути. Чтобы избавиться от пробелов в именах файлов, просто запустите приведенный выше скрипт из каталога, в котором вы хотите, чтобы произошло переименование (место, где хранятся файлы). Пробелы в ваших именах файлов волшебным образом исчезнут. Опять же, эта формула конкурирует в моем мозгу с mmv выше. mmv имеет больше возможностей, но эта команда действительно «чистая»

УПРАВЛЕНИЕ ПРОЦЕССОМ

8. Мониторинг узлов

while ps ax|grep nodejs && ls -l images/*|wc -l; do sleep 2; done

Этот скрипт выше раз в 2 секунды отслеживает запущенные процессы, в данном случае потоки nodejs. Если все еще есть активные потоки, он подсчитывает количество изображений, сохраненных в определенном каталоге (images/). Я запускаю такие скрипты, чтобы ждать процессов.

9. Отслеживайте трафик

tcptrack -i eth0

Есть около 5 таких инструментов, которые помогут вам контролировать сетевой трафик. Помимо top и мониторинга трафика инстансов (например, консоли AWS, мониторинга дроплетов DigitalOcean), иногда бывает приятно зайти прямо туда и посмотреть, как сетевой трафик проходит через один узел.

10. Разделить задания в .sh

while pgrep -u root nodejs > /dev/null; do sleep 1; done

Этот скрипт проверяет один раз в секунду, если пользователь root запускает процесс nodejs. Когда у меня есть набор потоков (скажем, парсеров nodejs), собирающих данные, этот скрипт позволяет запускать некоторые команды после этой строки, как только все процессы nodejs будут выполнены.

11. Установить количество цифр для печати для числа с плавающей запятой

print("{0:.2f}".format(a)) 

Я много раз гуглил этот красивый синтаксис печати. Я должен был перечислить это здесь. Он выбирает, сколько цифр точности печатать для числа с плавающей запятой. Не более 1234.365464654636.

12. Массовое удаление капель DigitalOcean

doctl compute droplet list "crunch*"| awk '{ system("yes|doctl compute droplet delete " $1);}'

Этот скрипт находит капли с именами, соответствующими шаблону «хруст*». Затем он пытается удалить каждую найденную каплю. Внимание! Любая виртуальная машина с именем "ID" также будет удалена.

Вот и все. Это все люди. Если вам понравился этот пост, то, пожалуйста, порекомендуйте его, поделитесь им или поставьте лайк (❤).

Удачного кодирования!

-Даниэль
[email protected] ← Передай привет.
Lemay.ai
1(855)LEMAY-AI

Другие статьи, которые могут вам понравиться: