Задать вопрос
  • Как можно записать multiline строку в файл, сохраняя символы новой строки?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Есть два варианта:
    1. Экранировать обратным слешем проблемные символы (кавычки и обратный слеш):
    multiline = '''
    report_number=$(head -n 1 "/root/cron_job_enumerator.txt" | tr -d \'\\n\')
    '''
    print(multiline)

    2. использовать префикс строк r, который не дает обрабатывать содержимое строки, заставляет воспринимать ее как есть (тогда отдельные символы экранировать не надо):
    multiline = r'''
    report_number=$(head -n 1 "/root/cron_job_enumerator.txt" | tr -d '\n')
    '''
    print(multiline)
    Ответ написан
    3 комментария
  • Зачем образу докера операционная система?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Потому что иногда удобнее иметь в контейнере минимальную ОС с окружением, а не конкретное приложение.
    Вы бы начали с изучения, что ответы на банальные вопросы можно гуглить - советую, пригодится.
    Ответ написан
    Комментировать
  • Зачем образу докера операционная система?

    saboteur_kiev
    @saboteur_kiev Куратор тега Системное администрирование
    software engineer
    Нет, докер не работает с системой на которой установлен. Он использует ее ядро, а дальше - зависит от докер образа.
    Ответ написан
    Комментировать
  • Как сделать мультидоменность на Next.js?

    @djEban Автор вопроса
    Ну что сказать, это жоска, 6 часов убитого времени и вот в чем лично у меня была проблема , может кто столкнется

    Былая функция-обертка, условно такая

    async function withHost(getStaticPropsData) {
        const getStaticProps = async (ctx) => {
            const response = await getHost(ctx.params.host);
            const gspData = await getStaticPropsData(ctx);
            return {
                props: { host: response.data, ...gpsData.props }
            }
        };
    
        const getStaticPaths = async () => {
            const response = await ServerCache.get("hosts");
            return {
                paths: response.data.map(...), 
                fallback: "blocking" 
            };
        }
    
        return { getStaticPaths, getStaticProps };
    };


    Здесь все просто: каждую хост-страницу оборачиваю в данную обертку, чтобы получить статические пути + для каждой страницы базовую информацию о хосте

    Проблема была, не догадаетесь, в том, что я экспортировал getStaticPaths (!!!) и использовал вот так:

    // index.tsx
    
    export const { getStaticPaths, getStaticProps } = withHost(() => ({
        props: {}
    }))


    Достаточно было вынести gsp в отдельную функцию и использовать ее лично для каждого роута

    export const getStaticProps  = withHost(() => ({
        props: {}
    }))
    
    export const getStaticPaths = getHostsPaths();
    Ответ написан
    Комментировать
  • Стоит ли сейчас ипользовать Elasticsearch?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    вообще - Эластик не стоит использовать никогда, но такая роскошь недешева

    дело в том что "других систем" особо не существует, их ровно одна: Sphinxsearch и ее отдельная ветка - Manticoresearch ( ее вот и стоит на сегодня),
    они сильно лучше Эластика по техническим параметрам: там где на Эластик уходит ~10к на кластер Амазона, Сфинксы обходятся 1-2к сервером ( вообще 1, но приходится все же побольше SSD ставить)

    но!

    почему-то ж Вы когда-то выбрали Эластик?
    да, именно поэтому:
    • есть мануалы
    • есть API (в сфинксе наверно и сейчас нет, в Мантикоре есть - учли это)
    • есть "кто-то кто уже работал"
    • есть плагины, надстройки, аддоны


    проще говоря чтобы перевести корпорт на Сфинкс - вам придется думать где взять людей,
    поэтому для бизнеса может оказаться проще разобраться с доступами чем кардинально менять на лучшее, сильно лучшее, но тяжелое в освоении

    это , в общем-то, и много чего в project mamagement касается
    Ответ написан
    4 комментария
  • Есть ли какие-либо курсы по повышению квалификации для Backend разработчика (Node.js)?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Александр, Любые курсы, которые могут кем-то котироваться, должны быть либо от производителя, либо от крупных образовательных организаций.

    nodeJS кто владелец? OpenJS
    Там можно посмотреть
    https://openjsf.org/certification/

    Ну или кого-то крупного поискать, может кто-то coursera котирует.
    Ответ написан
    Комментировать
  • Зачем в данной функции нужны круглые скобки?

    XanXanXan
    @XanXanXan
    Чтобы фигурные скобки воспринимались как возврат объекта, а не как тело функции.
    Ответ написан
    Комментировать
  • Можно ли учить Go первым языком?

    Можно, разрешаю.

    Никаких сакральных причин, почему многие учат сначала питон нет. Ктото первым учит Basic, кто-то Pascal, кто-то C++. Python просто самый популярный в этом плане сейчас
    Ответ написан
    Комментировать
  • Какое различие между этими функциями?

    Alexandre888
    @Alexandre888
    Javascript-разработчик
    1. «Function expression» https://learn.javascript.ru/function-expressions
    2. «Function declaration» https://learn.javascript.ru/function-basics

    о различиях по первой ссылке
    Ответ написан
    Комментировать
  • Как произвести сортировку в таблице SQLite3, после удаления записи?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Все базы данных хранят строки не так как Excel. Хранят как предписано в файловом
    формате для целевой DBMS. Когда удаляешь - обычно
    остаются дырки которые потом заполняются другими строками. Но это я упрощенно рассказываю.
    В реальности все еще сложнее. И есть процессы вакуума или другой релокации строк. И таблица
    может двигаться в памяти. Шаффлиться. Делиться на части. Кластеризоваться и т.п.

    Поэтому твоя хотелка достигается только с использованием order by.

    Все остальные способы не работают потому что язык SQL не дает никаких гарантий относительно
    физического упорядочивания строк.

    UPD: Для авто-нумерации https://stackoverflow.com/questions/16847574/how-t...
    Ответ написан
    Комментировать
  • Как произвести сортировку в таблице SQLite3, после удаления записи?

    Vindicar
    @Vindicar
    RTFM!
    Ты просто не понимаешь сути первичного ключа.
    Это значение, которое однозначно идентифицирует строку, независимо от наличия и количества других строк в таблице. И точка. Он не должен меняться вообще за время жизни строки.
    Бывают случаи, когда у нас уже есть уникальное значение, которое можно использовать как ключ.
    Но куда чаще используются синтетические ключи, т.е. просто числа, которые пользователь по-хорошему и видеть-то не должен никогда. А раз так, то какая разница, есть ли дырки в нумерации?
    Я больше скажу, иногда сплошная нумерация - это слабое место в системе.
    Ответ написан
    Комментировать
  • Можно ли запустить программу на языке C в операционной системе FreeDOS или MSDOS?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я думаю можно. Поищи такие компилляторы как Watcom C, Borland C.
    Они умеют генерить код для DOS. На ваткоме кажется была написана
    игра Doom for DOS.

    UPD +Линка www.openwatcom.org
    Ответ написан
    Комментировать
  • Можно ли запустить программу на языке C в операционной системе FreeDOS или MSDOS?

    Нужно компилировать под DOS, а ты скомпилировал под Windows.
    Каждая программа на Windows содержит в себе маленькую программу для DOS, которая выводит такое сообщение.

    Скорее всего - тебе понадобится компилятор и среда разработки примерно из тех же годов, что и DOS
    Ответ написан
    3 комментария
  • Почему npm отказано в доступе?

    @Samuel_Leonardo
    у вас Powershell и соответственно он пытается запускать ps скрипты в первую очередь, которые по умолчанию запрещены на обычной системе.

    проще всего переключиться на cmd
    Ответ написан
  • Как на самом деле работает параллелизм?

    leahch
    @leahch
    3D специалист. Dолго, Dорого, Dерьмово.
    Ну, книги Вам уже посоветовал @firedragon
    Я же хочу вкратце ответить на этот замечательный вопрос.
    Давайте разберемся с одним CPU без потоков...
    Когда процессоры были большими, а люди... В общем, на заре компухтеров был только один поток, и чтобы получить многозадачность, придумали ОС с вытеснением задач.
    Смысл в том, что когда завершается "программа", то запускается следующая в очереди (очередь с приоритетом). Задача работает до тех пор, пока не завершится.

    Так как задача иногда могла работать очень долго, и ничего не делать во время операций ввода-вывода то придумали прерывания, чтобы ввод-вывод сигнализировал о проделанной операции (окончании печати например, или нажатии клавиш). Тогда появились операционные системы с вытеснением задач по прерыванию. Здравствуйте мейнфреймы!

    Но прерывания на ввод-вывод иногда можно ждать долго, и не дождаться. Но умные дяди придумали геренировать прерывания сами себе, от таймера. Да, в молодости это просто кварц и конденсатор, на ножку процессора. И вот, появились ОС с реальной многозадачностью, где система получает управление через сторого определенные промежутки времени - тики или клоки.

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

    Ах, да, молодость процессоров - одно прерывание на все сразу :) И крутись, как хочешь :)
    Ответ написан
    1 комментарий
  • Как создать слеш команды на discord.py?

    fenrir1121
    @fenrir1121 Куратор тега discord.py
    Начни с документации
    Многие используют from discord_slash import SlashCommand
    Смелое заявление о библиотеке, которая не обновлялась с 2021 года. У нее уже даже архивный репозиторий удалили и ссылка ведет на interactions.py.

    Как создать слеш команды на discord.py?
    Открыть examples библиотеки, например basic.py, вставить свой токен и запустить. Все примеры снабжены исчерпывающими комментариями.
    Ответ написан
    Комментировать
  • Есть смысл в DDR4-3600 для Ryzen 3100?

    @ewgenc
    Нет, прирост производительности на уровне погрешности.
    Ответ написан
    1 комментарий
  • Как сделать микроразметку Shema и Open Graph?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    И может есть какая документация по Shema и Open Graph хорошая

    Серьёзно? Лучше чем официальная нет. Вы ещё скажите, что нагуглить не получается.
    Ответ написан
    1 комментарий
  • Как спарсить whatsapp web?

    zkrvndm
    @zkrvndm
    Архитектор решений
    Там все слишком сложно. Проще парсить через реальный браузер используя MutationObserver.
    Ответ написан
    Комментировать