issue
Rock and Stone, brother!
|
Tatsache! issue ~/flame/mozilla-profile/profile/9td2rfwf.default $ for i in {1..8};do yes > /dev/null &;done
bash: syntax error near unexpected token `;'
Wusste ich nicht, thx!
|
Rektal
Here to stay
|
Statt des klassichen Pipe-Konstrukts
find ... | xargs <programm> <prog_args>
verwendet man besser
find ... -exec <programm> <prog_args> {} +
`find` ersetzt dabei die Zeichenfolge {} mit der Liste der gefundenen Pfadnamen, und zwar in einer Art und Weise, die auch bei exotischen Dateinamen (mit '\n' und dergleichen im Pfadnamen) nicht bricht. Auszerdem spart man sich einen zusaetzlichen Prozess Cool, das '+' bei find kannte ich nicht. Es gibt aber auch bei find/xargs combo eine Moeglichkeit die "filename safety" zu gewaehrend: find ... -print0 | xargs -0 ...
Ich verwend aus anderen gruenden auch xargs: ich kann Programme parallel starten und bestimmen wie viele args jeweils uebergeben werden sollen. find ... -print0 | xargs -0 -n 1 -P 4
-n 1 -> wie viele argumente uebergeben -P 4 -> wie viele parallel
|
watchout
Legendundead
|
echo "alias crontab='crontab -i'" >> ~/.bashrc
Macht immer eine Abfrage bei crontab -r. Wer sich fragt wozu man sowas braucht möge bitte einen Blick auf seine Tastatur werfen, und schauen wo E und R dort sind Benötigt - Bash oder andere Shell mit alias
- Cron
. `find` ersetzt dabei die Zeichenfolge {} mit der Liste der gefundenen Pfadnamen, und zwar in einer Art und Weise, die auch bei exotischen Dateinamen (mit '\n' und dergleichen im Pfadnamen) nicht bricht. Auszerdem spart man sich einen zusaetzlichen Prozess Interessant. Ich geb zu, ich hab angenommen dass find solche Namen korrekt escaped. In einem Java Source-Tree wirst du sie aber jedenfalls nicht finden
|
Rektal
Here to stay
|
`find` ersetzt dabei die Zeichenfolge {} mit der Liste der gefundenen Pfadnamen, und zwar in einer Art und Weise, die auch bei exotischen Dateinamen (mit '\n' und dergleichen im Pfadnamen) nicht bricht. Auszerdem spart man sich einen zusaetzlichen Prozess
Geil, hehe; ist mir zum Glueck noch nie passiert. Ausser fuer wirklich user-spezifische Cronjob (i.e. persoenliche/private) hab ich aufgehoert das zu nutzen und lege sie nur mehr unter /etc/cron.d/ ab; dadurch sind sie bei mir auch automatisch durch etckeeper >versionisiert< .
|
Nico
former person of interest
|
tr -dc _A-Za-z0-9\!\"\#\$\%\\&\'\(\\)\*\+\,\.\/\:\;\<\=\>\?\@\[\\\]\^\`\{\|\}\~\- < /dev/urandom | head -c 63
erzeugt ein sicheres passwort mit druckbaren ascii zeichen, die länge steht am ende der zeile - in diesem beispiel 63. das gute an dieser methode ist vorallem die anpassbarkeit, falls eine service bestimmte zeichen nicht erlaubt, kann man hier genau wählen und verschiedene varianten zb in einem script unterbringen. für eine wpa2 passwort ist dieser einzeiler genau richtig wie er ist - erlaubt sind 63 zeichen, wie ihr wisst
Bearbeitet von Nico am 09.04.2016, 23:30
|
Valera
Here to stay
|
Ich hab nix spektakuläres aber für mich gerade unheimlich wichtiges. Weil mir irgendwann das OS eines Debian Wheezy Server zerschossen wurde (durch update??) und das Ding beim letzten Stromausfall durch die USV runtergefahren wurde und sich jetzt beim Hochfahren aufhängt sind die für mich heute wertvollsten Einzeiler unter einem FreeBSD 10.3 Live System vom USB Stick: # mount -u -a -o rw
Ändert mir das gerade laufende Live System von read only auf writeable damit ich die Mountpoints für folgendes erstellen lassen kann: # zfs send productpool/dataset@today | zfs receive backup/dataset
Dh. ich kopiere gerade die Daten eines ZFS Pools datasetweise auf externe Beckupplatten damit ich nicht auf mein richtiges Backup zurückgreifen muß wenn was schiefgeht, weil Murphy und so. Zu dem Malheur hab ich eh Fragen, dafür mach ich aber eine eigenen Thread auf wenn ich soweit alles wieder habe.
Bearbeitet von Valera am 03.06.2016, 23:02
|
COLOSSUS
AdministratorGNUltra
|
Ein read-only gemountetes Dateisystem (hier am Beispiel von "/"; also dem rootfs) kann man unter GNU/Linux generell via mount -o remount,rw /
beschreibbar einhaengen. Manche Implementationen von `mount` (iirc war das bei busybox so) brauchen ein bisschen mehr Hilfe, und bestehen dabei auf die Angabe des Quellblockgeraets, z. B. so: mount -o remount,ro /dev/sda1 /
Das kann auch dann noetig sein, wenn es keine (sinnvolle) /etc/mtab gibt. Veilleicht hilft's ja mal jemandem
|
COLOSSUS
AdministratorGNUltra
|
Im Monitor integrierte Lautsprecher muten (so als wuerde man das via OSD erledigen): sudo ddcutil setvcp $(sudo ddcutil capabilities | awk '/Audio mute/{print "0x"$2}') 1
Unmuten: sudo ddcutil setvcp $(sudo ddcutil capabilities | awk '/Audio mute/{print "0x"$2}') 0
Vorausseztungen: i2c_dev ist geladen und der Monitor unterstuetzt das Feature in der Firmware. Bei Notebooks ist das z. B. leider nicht der Fall; muss ein "Standalone"-Display sein. Ueber DDC kann man einen Haufen schraeges Zeug machen - `sudo ddcutil detect` und `sudo ddcutil capabilities` geben einen guten Vorgeschmack.
|
that
Hoffnungsloser Optimist
|
for i in *.zip ;do mkdir ${i%.*}; cd ${i%.*}; unzip ../$i; cd .. ; done
Entpackt alle ZIPs in einem Verzeichnis in je ein Unterverzeichnis. In diesem Zusammenhang sei auch auf das Script "unp" verwiesen, das noch viel mehr kann -> https://packages.qa.debian.org/u/unp.html
|
COLOSSUS
AdministratorGNUltra
|
Wer schnell checken will, ob ein fuer OpenSSL lesbares X.509-Zertifikat CERTFILE.pem zu einem privaten Schluessel KEYFILE.pem passt, kann das mit "modernen" ECC-Keys (auf Kurven wie secp256k1 usw.) so tun: md5sum <(openssl x509 -in CERTFILE.pem -noout -pubkey) <(openssl ec -in KEYFILE.pem -pubout)
Fuer immer noch weit verbreitetes RSA-Schuesselmaterial muss man das ganze etwas anpassen: md5sum <(openssl x509 -in KEYFILE.pem -noout -pubkey) <(openssl rsa -in CERTFILE.pem -pubout)
Bei identischen Hash-Werten in beiden Zeilen passen Private und Public Key zueinander (oder OpenSSL hat beide Male nix bzw. den gleichen Fehler (sollte nicht passieren) auf stdout produziert, ODER man hat eine MD5-Kollision ).
|