0

ls soll auch die Sekunden anzeigen

Posted by Ingmar Stempell on Sep 28, 2011 in Allgemein, Work Related

ls -l --time-style=+'%c ' wird zu '-rw-r--r--  1 user           group  1000  Mi 28 Sep 2011 08:43:31 UTC file'

Leider gibt es keine Erklärung zur --time-style Option in der ls Manpage. Die Erklärung was mit dem % Parameter dargestellt wird, stammt aus der Man-Page von date:

%c     Datum und Uhrzeit gemäß Ländereinstellung (z. B. Die 23 Jan 2001 19:10:08 CET).

 

 

Schlagwörter: , ,

 
0

Alle .svn Ordner löschen

Posted by Ingmar Stempell on Aug 26, 2010 in Work Related


#!/bin/sh
echo "recursively removing .svn folders from"
pwd
rm -rf `find . -type d -name .svn`

Schlagwörter: , ,

 
1

Zeilenumbruch in vi löschen

Posted by admin on Apr 28, 2010 in Work Related

Ha, wer hätte gedacht, dass es so einfach ist:
J steht für Join und löscht nur den Zeilenumbruch (Ein großes J).

aus
Zeile1
Zeile2
Zeile3


wird nach 3 mal drücken der J-Taste
Zeile1Zeile2Zeile3

Iggi

Schlagwörter: ,

 
0

Extract filename from path with bash

Posted by admin on Nov 18, 2009 in Allgemein

x=/etc/postfix/master.cf
echo ${x##*/} # = master.cf
echo ${x#*.} # = cf
echo ${x%.*} # = /etc/postfix/master
echo ${x%/*} # = /etc/postfix

echo ${x/.*}|awk -F/ '{print $NF}' # = master

Schlagwörter: ,

 
0

MySQL DATETIME from Bash date

Posted by admin on Okt 29, 2009 in Work Related

Just execute this:
$> date +"%Y-%m-%d %H:%M:%S"
this will produce the same output as:
SELECT now( )

Output: 2009-10-29 09:53:19

Schlagwörter: , ,

 
2

cant umount ODER Wie man trotzdem unmounten kann

Posted by admin on Okt 23, 2009 in Allgemein

Normalerweise kann man mit umount /device ein Verzeichnis/Device abhängen. Das klappt manchmal nicht. Stattdessen erhält man ein umount: /device: device is busy
Ansonsten schweigt er sich aus. Aber wenn ich es doch gern unmounten will! Irgend ein Prozess blockiert hier und man weiß nicht welcher. Die Rettung naht in Form von man fuser .
Mit fuser -m /device werden einem die blockierenden Prozesse angezeigt. Die Informationen kann man dann ps ax vergleichen und erhält die pid zum Prozess.
kill -9 pid und dann klappts auch mit dem umount.

Hier mit Beispiel:
root@homer:~# umount /mnt/cdrom
umount: /mnt/cdrom: device is busy
umount: /mnt/cdrom: device is busy
root@homer:~#
root@homer:~# fuser -m /mnt/cdrom/
/mnt/cdrom/: 24066c
root@homer:~# ps aux | grep 24066
root 24066 0.0 0.5 2244 1284 pts/10 S 14:04 0:00 -su
root@homer:~#
root@homer:~# kill 24066
root@homer:~#
root@homer:~# umount /mnt/cdrom/

Das Beispiel stammt von

http://www.linux-noob.com/forums/index.php?/topic/150-cant-umount-cdrom/

Schlagwörter: ,

 
0

PDF in JPG umwandeln

Posted by admin on Sep 10, 2009 in Allgemein, Work Related

Die Axt im Hause ersetz den Zimmermann!
In diesem Fall sprechen wir von ImageMagick. Unter Debian installiert man es ganz einfach mit
apt-get install imagemagick
die folgende Zeile erledigt dann die Konvertierung des PDFs in das JPG
convert -density 300 file.pdf file.jpg

Für den Parameter -density sind übliche Werte wie 72, 300, 600 ohne Problem verdaulich.

Schlagwörter: , , ,

 
0

Problems with vsftp and debian

Posted by admin on Sep 4, 2009 in Allgemein, Work Related

https://lists.ubuntu.com/archives/ubuntu-users/2006-October/096075.html

´After spending the whole day tweaking and experimenting with vsftpd I
now have it setup as follows. Anonymous login, read only, with upload
enabled in one directory. I have a list of local users that can login
over SSL, and have read/write access to files in their jails. The
problem is that some of these users I want to be ftp-specific so they
don’t need valid shells. However if any of the users has the
shell /bin/false in the passwd file then when they try to login to the
ftp is says LOGIN INVALID. Please, how can I go about allowing users to
loging but without giving them valid shells?

A lot of experimenting revelaed vsftpd would only let users login that
had a home directory of /home/$user and a shell, either /bin/bash
or /bin/sh specified in /etc/passwd. I’m stumped.

On Friday 06 October 2006 19:53, Gabriel M Dragffy wrote:
> This would seem to be a bit of a small discrepency, why can’t vsftpd
> allow a user to login that has a shell of /bin/false? Pureftpd can, no
> probs, hmm.

Sorry, I should have covered that. You can add /bin/false instead
of /sbin/nologin to the list of shells in /etc/shells. We use
/sbin/nologin for compatibility across our various Redhat, Fedora,
Debian and Ubuntu systems.

–Mike Bird

From a nother Source
Make sure you have

pam_service_name=vsftpd

in your /etc/vsftpd.conf

Schlagwörter: , ,

 
0

Rechnen in BASH

Posted by admin on Aug 31, 2009 in Allgemein, Work Related

Wehe man hat bc nicht installiert! Dann nicht weiterlesen. Du kannst sehen, ob Du bc installiert hast:

ls -alh /usr/bin/bc

Wenn es vorhanden ist, dann kann man so wunderbare Funktionen wie sqrt benutzen. Allerdings ist wieder etwas rumprobieren erforderlich, da man bc über echo füttert.

echo $(echo "$temp" | bc )

Das Echo in der Mitte übergibt $temp an bc. Das erste echo gibt den Inhalt der Klammer aus. Statt $temp kann da auch eine wilde Rechenoperation wie sqrt($temp) o.ä. drin stehen. Besonders wichtig:
Das(bc) ist die einzige Möglichkeit Fließkommazahlen / Floatingpointnumbers in der bash zu benutzen! Und weil Floatingpointnumbers im normalen Leben einer Bash keine Rolle spielen, muss man die Nachkommastelle wieder entfernen. Wie runden in der bash funktioniert, hab ich noch nicht rausgefunden, aber truncate geht mit:

TEMP=$(echo "sqrt($TARGETSIZE/($ROWS/$COLUMNS))" | bc -l)
NEWCOLUMNS=$(printf %.0f $TEMP)

Die zweite Zeile ist das Entfernend er Nachkommastelle.

UPDATE:
Wer Mathe kann, ist klar im Vorteil. An dieser Stelle ein “Danke” an Johannes für diese verblüffend einfach Lösung.

x=ganzzahlanteil(a+0,5)

Bissel drüber nachdenken und es ergibt sich von selbst. Das klappt natürlich nach diesem System([a*10^nachkommastelle+0,5]/10^nachkommastelle) auch für beliebige Nachkommastellen, nicht nur für die Erste.

Die Umsetzung in ein bash script ist dann einfach gewesen:

bash Script:

function round () {
echo $(printf %.$2f $(echo "scale=$2;(((10^$2)*$1)+0.5)/(10^$2)" | bc))
}

echo $(round 3.1234 2)
echo $(round 3.1271 2)

Ausgabe

3.12
3.13

Schlagwörter: ,

 
0

Mount FTP

Posted by admin on Aug 27, 2009 in Allgemein, Work Related

Es gibt Leute, die wollen FTP Verzeichnisse mounten. Also mit ihrem FTP Account auf den entfernten Server zugreifen, sich regulär einloggen, das soll im Hintergrund geschehen und am besten danach so anfühlen, als arbeite man auf der lokalen Maschine. Ich verstehe nicht wozu man das braucht, aber es geht. Einfach das Paket curlftpfs installieren. Das geht bei Debian mit apt-get install curlftpfs dann mit
curlftpfs user:passwort@IP.IP.IP.IP /mountpoint
einbinden und fertig. Soll das ganze auch nach einem Neustart funktionieren, dann geht das so:
curlftpfs#user:password@IP.IP.IP.IP /mountpoint fuse rw,uid=500,user,noauto 0 0
Diese Zeile habe ich aber noch nicht getestet!

Spass beiseite: Selbstverständlich kann sowas sehr praktisch sein, wenn man mit einem FTP Server arbeitet, auf den man keinen Einfluss hat. Solche simplen Arbeiten, wie das Vergleichen von Verzeichnissen oder kopieren von Dateien,

UPDATE:
Ein echter Haken ist, dass die Dateiowner hinterher nicht mehr stimmen. Klar! Wie soll das bei FTP auch gehen.
Links:

deren Inhalt sich geänder hat, werden so erst möglich.

Schlagwörter: , , ,

Copyright © 2012 Stempell All rights reserved. Theme by Laptop Geek.