Nützliche Einzeiler: Unterschied zwischen den Versionen
Aus Si:Wiki von Siegrist SystemLösungen - Informatik und Rezepte
Sigi (Diskussion | Beiträge) |
Sigi (Diskussion | Beiträge) (→Aliases aus sendmail /etc/aliases extrahieren und mit Domainname in eine Postgresql Datenbank als source,destination Paar einfügen) |
||
Zeile 45: | Zeile 45: | ||
==== Aliases aus sendmail /etc/aliases extrahieren und mit Domainname in eine Postgresql Datenbank als source,destination Paar einfügen ==== | ==== Aliases aus sendmail /etc/aliases extrahieren und mit Domainname in eine Postgresql Datenbank als source,destination Paar einfügen ==== | ||
− | + | Der Oneliner gibt lediglich die 'psql' Statements aus, es wird nichts geschrieben oder verändert. Dind in der Aliases-Datei bereits Einträge in der Form 'user@domain.tld' vorhanden, werden diese so übernommen. Einträge ohne '@domain.tld' wird jeweils ein '@example.ch' angehängt. | |
:<code><nowiki> cat /etc/aliases | grep -Pv "^#.*" | grep -v "|" | awk -F: '{ split($2,arr,","); for (i in arr) print $1,arr[i]; }' | sed 's/\\//' | perl -pe 's/(^(?!\S+\@)\S+)\s+((?!.+\@).+)/$1\@example.ch\t $2\@example.ch/' | sort | awk '{print "psql -h 127.0.0.1 -U dbuser -d database -w -X --set ON_ERROR_STOP=on -t --no-align -t --no-align --field-separator \"|\" --single-transaction -c \"insert into mailagent.forwardings (source, destination) values (\047"$1"\047, \047"$2"\047);\"" }' </nowiki></code> | :<code><nowiki> cat /etc/aliases | grep -Pv "^#.*" | grep -v "|" | awk -F: '{ split($2,arr,","); for (i in arr) print $1,arr[i]; }' | sed 's/\\//' | perl -pe 's/(^(?!\S+\@)\S+)\s+((?!.+\@).+)/$1\@example.ch\t $2\@example.ch/' | sort | awk '{print "psql -h 127.0.0.1 -U dbuser -d database -w -X --set ON_ERROR_STOP=on -t --no-align -t --no-align --field-separator \"|\" --single-transaction -c \"insert into mailagent.forwardings (source, destination) values (\047"$1"\047, \047"$2"\047);\"" }' </nowiki></code> |
Version vom 10. März 2016, 15:06 Uhr
Inhaltsverzeichnis
- 1 ssh forwarding von IPv4 Host zu IPv6 Host (www.example.org) über ein Intermediate Dualstack System
- 2 netcat filetransfer
- 3 netcat proxy
- 4 Ersetze "foo" mit "bar" NUR in Zeilen die "baz" enthalten
- 5 Ersetze "foo" mit "bar" AUSSER in Zeilen die "baz" enthalten
- 6 Ausgabe der Zeilen 45-50 einer Datei
- 7 Directory sharing via http
- 8 csv to vcard converter
- 9 grep access_log und print host info
- 10 die 1000 meistgenutzten Ports aus nmap-services als String komma-separiert
- 11 finde alle symlinks die auf DATEI zeigen
- 12 finde alle symlinks die auf DIRECTORY zeigen
- 13 8 Byte Passwort generieren
- 14 Perl Oneliner um ein Unix-Socket File (Typ: s) zu erstellen
- 15 Aliases aus sendmail /etc/aliases extrahieren und mit Domainname in eine Postgresql Datenbank als source,destination Paar einfügen
ssh forwarding von IPv4 Host zu IPv6 Host (www.example.org) über ein Intermediate Dualstack System
- local IPv4 system create tunnel via intermediate:
ssh -4 user@intermediate-system -L 2222:[2606:2800:220:1:248:1893:25c8:1946]:22
- connect to IPv6 www.example.org:
ssh localhost:2222
netcat filetransfer
- local:
nc -l -p 77 -e "tee gaga" -v
- remote:
cat file.tar.gz | netcat 192.168.1.113 77
netcat proxy
nc -l -p 1234 | nc www.server.com 80
Ersetze "foo" mit "bar" NUR in Zeilen die "baz" enthalten
sed '/baz/s/foo/bar/g'
Ersetze "foo" mit "bar" AUSSER in Zeilen die "baz" enthalten
sed '/baz/!s/foo/bar/g'
Ausgabe der Zeilen 45-50 einer Datei
sed -n '45,50p' filename
Directory sharing via http
- ipv4:
python -m SimpleHTTPServer 1234
- ipv6:
???
csv to vcard converter
cat addr_book.csv | awk -F"," '{ print "BEGIN:VCARD\nN:" $3 ";" $2 ";" $1 "\nFN:" $3 "\nEMAIL;TYPE=INTERNET:" $5 "\nEND:VCARD"}' > addr_book.vcf
grep access_log und print host info
grep "GET /index.shtml?tcpportscan=" /var/log/apache2/access_log | awk '{system("host " "\""$1"\"")}' | uniq
die 1000 meistgenutzten Ports aus nmap-services als String komma-separiert
cat /usr/share/nmap/nmap-services | sort -nr -k 3 | grep "/tcp" |awk '{print $2}' | sed 1000q | awk -F/ '{print $1}' | sort -n | perl -n -e 'chomp; print "$_,";'
finde alle symlinks die auf DATEI zeigen
find / -type l -print 2>/dev/null | while read symlink; do echo -n "$symlink"; targ=$(readlink -f "$symlink"); echo "-> $targ"; done | grep "DATEI"
finde alle symlinks die auf DIRECTORY zeigen
find / -type l -xtype d -print 2>/dev/null | while read symlink; do echo -n "$symlink"; targ=$(readlink -f "$symlink"); echo "-> $targ"; done | grep "DIRECTORY"
8 Byte Passwort generieren
openssl rand -base64 6
Perl Oneliner um ein Unix-Socket File (Typ: s) zu erstellen
perl -MIO::Socket::UNIX -e 'IO::Socket::UNIX->new(Type => SOCK_STREAM(),Local => "/tmp/einsocket");'
Aliases aus sendmail /etc/aliases extrahieren und mit Domainname in eine Postgresql Datenbank als source,destination Paar einfügen
Der Oneliner gibt lediglich die 'psql' Statements aus, es wird nichts geschrieben oder verändert. Dind in der Aliases-Datei bereits Einträge in der Form 'user@domain.tld' vorhanden, werden diese so übernommen. Einträge ohne '@domain.tld' wird jeweils ein '@example.ch' angehängt.
cat /etc/aliases | grep -Pv "^#.*" | grep -v "|" | awk -F: '{ split($2,arr,","); for (i in arr) print $1,arr[i]; }' | sed 's/\\//' | perl -pe 's/(^(?!\S+\@)\S+)\s+((?!.+\@).+)/$1\@example.ch\t $2\@example.ch/' | sort | awk '{print "psql -h 127.0.0.1 -U dbuser -d database -w -X --set ON_ERROR_STOP=on -t --no-align -t --no-align --field-separator \"|\" --single-transaction -c \"insert into mailagent.forwardings (source, destination) values (\047"$1"\047, \047"$2"\047);\"" }'