• Python Replace ломает файл. Почему?

    @va_k
    Замените `f.close()` на `os.fsync(f)`. Менеджер контекста у вас сам закроет файл.
    Ответ написан
    Комментировать
  • Как реализовать остановку цикла for?

    Vindicar
    @Vindicar
    RTFM!
    Если тебе нужна проверка на останов после каждой операции - придётся-таки эту проверку производить после каждой операции. Да, можно схитрить, но от этого не уйдёшь.

    Я могу посоветовать убрать time.sleep() и заменить их на threading.Event.wait() с таймаутом - в этом случае, если Event будет взведено, то не придётся "досыпать". Но проверять исход ожидания всё равно придётся самому.

    Альтернативное, но ОЧЕНЬ кардинальное решение - сделать код асинхронным. Причина в том, что у асинхронных подпрограмм, завёрнутых в Task, есть механизм отмены, позволяющий принудительно выкинуть исключение в ходе выполнения любой длительной операции (любого await-вызова). По сути, это та же самая проверка - но встроенная.

    Это работает, так как асинхронный код выполняется в одном потоке. Провернуть такой же фокус, скажем, в многопоточном приложении - нетривиально и довольно рискованно.
    Ответ написан
    2 комментария
  • Что почитать по системному администрированию?

    meDveD_spb
    @meDveD_spb
    посмотреть видео и решить, надо ли заниматься подобным и в какую сторону лучше двигаться:
    https://www.youtube.com/watch?v=QT5cNrMQBGo
    Ответ написан
    1 комментарий
  • Что почитать по системному администрированию?

    Age1mar
    @Age1mar
    DevOps a little
    Больше практики, ходите на собеседования, пробуйте. Ставьте себе достижимые цели и достигайте их.
    Может помочь книга "Томас Лимончелли: Системное и сетевое администрирование", многое расставит по местам.
    А так же книга Голдратта - Цель весьма полезная. И туда же Проект Феникс.
    Ответ написан
    Комментировать
  • Как автоматический обновлять сайт на сервере с Github?

    NYMEZIDE
    @NYMEZIDE
    резюме - ivanfilatov.ru
    1. powershell скрипт с git командами
    2. планировщик на сервере, чтобы периодически дергал этот скрипт.

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

    @res2001
    Developer, ex-admin
    Не буду рекомендовать литературу, обозначу основные направления.

    1.Знания по сетям надо подтянуть. Организация с точки зрения админа - это в первую очередь локальная сеть и организация работы многих устройств в этой сети. Часто имеется географически распределенная сеть.
    У вас пока больше ремонт и обслуживание оборудования.
    В домашних условиях изучать сети проблематично. Проще всего устроится в контору, где уже есть 1-2 админа и совместно решать конкретные задачи в конкретных условиях. Условия в разных организациях могут быть очень разными, а от этого сильно зависят способы решения задач.

    2.Базы данных. Они есть в любой организации. Даже бывает, что организация не знает об этом.
    Поэтому на каком-то уровне нужно знать БД: настройка, бэкап, оптимизация. Хорошо знать SQL - реально часто полезен. Хорошо хотя бы иметь представление с какой стороны заходить к 1-2 распространенным СУБД. Например взять 1 из корпоративного сектора (MS SQL) и одну свободную (Postgre, MySQL). Лучше начинать с реляционных СУБД. Сейчас полно других вариантов, но реляционные наиболее универсальный вариант и подходят практически в любых ситуациях, к тому же в корпоративном секторе используются в основном РСУБД. Специализированные СУБД могут быть в каких-то направлениях более эффективны, чем РСУБД, но это уже совсем другая история.

    3.Изучать скриптовые языки применительно к административным задачам. Начать следует с языков командной оболочки используемой ОС (cmd, powershell, bash), после этого хорошо изучить какой-либо универсальный ЯП (python). Этому может способствовать такой подход: есть некая задача, вы можете ее решить используя GUI утилиту, попробуйте ее решить без применения GUI инструментов. Стоит помнить о том, что инструменты администрирования командной строки являются первичными, а затем они уже обрастают GUI надстройками. Часто задачи решаются только из командной строки.
    Ответ написан
    1 комментарий
  • Минимизировать функцию на jquery?

    Stalker_RED
    @Stalker_RED
    function pew(selector) {
      if($(selector).val().length != 0) {
        $(selector).removeAttr('style');
      } else {
        $(selector).css(styles = {
          borderColor : "#dc4747",
          background: "#feecec"
        });
      }
    }
    
    ['#sitename', '#desc', '#metadesc'] // и все остальные сюда
      .forEach(selector=>pew(selector))


    А может быть вам подойдет что-то такое:
    $('#myForm :input').on('change', function(){
      $this = $(this)
      if($this.val().length != 0) {
        $this.removeAttr('style');
      } else {
        $this.css(styles = {
          borderColor : "#dc4747",
          background: "#feecec"
        });
      }
    })
    Ответ написан
    4 комментария
  • Как составить безопасное и подготовленное выражение с mysqli?

    roswell
    @roswell
    и швец, и жнец, и на дуде игрец
    $mysqli = new mysqli( 'localhost', 'user', 'password', 'database' );
    if ( $stmt = $mysqli->prepare( 'INSERT INTO comments( `note`, `name`, `text`, `date` ) VALUES( ?, ?, ?, ? )' ) ) {
        $id = 1;
        $name = $_POST[ 'namecomment' ];
        $text = $_POST[ 'inputcomment' ];
        $date = date( 'Y-m-d H:i:s' );
        $stmt->bind_param( 'isss', $id, $name, $text, $date );
        $stmt->execute();
    } else {
        echo $mysqli->error . PHP_EOL;
    }
    $mysqli->close();

    Докция на php.net
    Ответ написан
    2 комментария