Tabelle vom MySQL abfragen und aktualisieren

UPDATE tabelle SET abc = 'neu' WHERE id IN (
   SELECT id FROM (
      SELECT * FROM tabelle WHERE def IS NULL
      AND def NOT LIKE 'das nicht%'
      ORDER BY def
   ) AS t
)

VirtualBox headless

vboxmanage list vms
vboxmanage startvm VM-DEMO01 --type headless
vboxmanage list runningvms

PlantUML mit Notepad++

JAR vom PlantUML lokal speichern. Im Menü „Sprachen“ vom Notepad++ über „Eigene Sprache definierten…“ die Definition (UDL) importieren. Neue Datei mit Endung „puml“ abspeichern. Die Batch-Datei „pantuml.bat“ zum JAR mit dem Namen „PlantUML“ anlegen.

@echo off
java -jar C:\PlantUML\plantuml.jar -charset UTF-8 %1

Im Menü „Ausführen“ über den Punkt „Externes Programm ausführen…“ den Befehl C:\PlantUML\plantuml.bat "$(FULL_CURRENT_PATH)" hinterlegen/starten.

Fitting Linear Models

y <- cars$dist
x <- 1:length(y)
plot(x, y, pch = 20)
fit <- lm(y~x)
abline(fit, col="blue", lwd=2)
fit_last_ten <- lm(y[40:50]~x[40:50])
abline(fit_last_ten, col="red", lwd=2)

CSV nach XLSX mit Python

Das Modul XlsxWriter mit pip install XlsxWriter installieren. Weitere Infos zum Lesen und Schreiben von CSV-Dateien hier.

import os
import glob
import csv
from xlsxwriter.workbook import Workbook
 
 
for csvfile in glob.glob(os.path.join('.', '*.csv')):
          print ("csvfile:", csvfile)
          workbook = Workbook(csvfile + '.xlsx')
          worksheet = workbook.add_worksheet()
          with open(csvfile, 'rt', encoding="ascii") as f:
                    reader = csv.reader(f, \
                    delimiter=';', quotechar='"')
                    for r, row in enumerate(reader):
                              for c, col in enumerate(row):
                                        worksheet.write(
                                        r, c, col)
          workbook.close()

Zuwachs in Dateien

Eine Textdatei wird über mehrere Iterationen stetig größer. Der Zuwachs beim letzten Stand der Datei wird gefunden, wenn die zuvor bekannten Zeilen eliminiert werden. Die Tools „comm“, „sort“ und „sed“ können unter Windows über GNU utilities for Win32 eingesetzt werden.

abc_sort.txt: abc
efg_sort.txt: abcefg
abcdefg_sort.txt: abcdefg

comm -3 abc_sort.txt abcdefg_sort.txt | sed s/^\t// | sort > defg.txt
comm -13 efg_sort.txt defg.txt | sed s/^\t// = x > d.txt