1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.

Пишу бесплатно скрипты

Тема в разделе "Поиск работы", создана пользователем Alekssss, 12.11.18.

  1. The Chief

    The Chief Активный участник

    11.697
    946
    Момент, когда понимаешь, что безнадёжно отстал от жизни.

    Изначальный говнокод:
    Код:
    foreach($line in Get-Content -Path $SupposedInf -Tail 50) {
       if ( $line.startswith($UpdDate) -and $line.contains(" "+$IBCode+"#")) {
          тут делаем всякое
       }
    }
    
    Правильный и красивый говнокод:
    Код:
    foreach($line in Get-Content -Path $SupposedInf -Tail 50 | Where-Object { $_.startswith($UpdDate) -and $_.contains(" "+$IBCode+"#") } ) {
       тут делаем всякое
    }
    
     
  2. gerodoth

    gerodoth Активный участник

    10.427
    1.257
    мне кажется читабельнее | Where-Object { $_.startswith($UpdDate)} | Where-Object {$_.contains(" "+$IBCode+"#") }
     
  3. The Chief

    The Chief Активный участник

    11.697
    946
    @gerodoth, двойной пайп — лишний оверхед. Лучше этого избегать. Почему? Потому, что это не просто какой-то фильтр, а полная передача набора объектов для последующей обработки. Зачем делать это два раза, если достаточно один?

    Кстати, кто скажет, не гадая, почему и первое, и второе — всё равно говнокод, тому я сразу рукопожму.
     
    Последнее редактирование: 26.07.19
  4. gerodoth

    gerodoth Активный участник

    10.427
    1.257
    потому что в форич можно наложить условия или потому что если умеешь в регкспы то все можно ззапихать в одно?
    люблю регэкспы но не умею
     
  5. The Chief

    The Chief Активный участник

    11.697
    946
    @gerodoth, не-а. Это вопрос вкуса. А вот -Tail 50 — вот самый говнокод. Брать весь файл слишком накладно, они там могут быть очень большие (логи обновлений с момента создания базы). Парсить на предмет первой строки с нужной датой можно, но всё равно вычитывать весь файл. Предположение «50 строк с хвоста точно содержат последнее обновление» — типичный говнокод.

    Кстати, отличное замечание. Пойду-ка, побыдлокодю…
     
  6. gerodoth

    gerodoth Активный участник

    10.427
    1.257
    я с него и начал думать, но он мне нужен раз в пол года, так что трудно дается
     
  7. имя

    имя Активный участник

    13.869
    2.565
    На странице сайта есть js простенький . Суть его такая: при попадании на страницу выводится окно через prompt (), в котором пользователь вводит некую информацию. После этого через document. write () пользователю выводится результат.
    Хочу видеть либо то, что он вводит, либо то, что видит в результате.
    В идеале - письмо мне на мыло с текстом "Пользователь ввёл число N"
    Реально это?