Artikel mit Schlagwort "Bash"
XAMPP unter Ubuntu
XAMPP ist eine beliebte Tool-Compilation um einen Webserver aufzusetzen.
Im Folgenden möchte ich die Installation und Konfiguration von XAMPP unter Ubuntu erläutern.
XAMPP kann als Archiv von der Apachefriends-Homepage heruntergeladen werden:
http://www.apachefriends.org/de/xampp-linux.html
Zunächst wird das Archiv nach /opt entpackt:
sudo tar xvfz xampp-linux-VERSION.tar.gz -C /opt
(VERSION durch jeweilige Bezeichnung ersetzen)
Es entsteht ein Verzeichnis /opt/lampp, worin sich XAMPP befindet.
Zur besseren Bedienung kann man sich zwei Verknüpfungen anlegen.
Die erste Verknüpfung startet das Control-Panel.
gksudo "python /opt/lampp/share/xampp-control-panel/xampp-control-panel.py"Mit der zweiten Verknüpfung lässt man sich mit dem Dateibrowser (Nautilus) das Webverzeichnis öffnen:
nautilus /opt/lampp/htdocs
Damit in diesem Verzeichnis auch geschrieben werden kann, muss noch die Berechtigung angepasst werden:
sudo chmod -R 777 /opt/lampp/htdocs
Zuletzt noch die Sicherheitsroutine starten, wo diverse Passwörter eingestellt werden. Zuvor sollte XAMPP im Control Panel gestartet werden.
sudo /opt/lampp/lampp security
Im Browser kann man die Seite nun aufrufen: http://localhost
Fertig!
PS: LAMPP ist im übrigen die alte Bezeichnung. Das Paket wird neuerdings XAMPP genannt.
C programmieren mit vim
Mit vim, dem vielseitigen und hoch konfigurierbaren Editor, kann man sich auch sehr einfach eine kleine IDE für C bauen. Ziel ist es den geschriebenen Quellcode direkt in vim zu kompilieren und auszuführen. Dazu ist nur ein wenig Konfigurationsarbeit in der vimrc nötig.
Zunächst macht man Angaben zum Compiler:
Falls der Dateityp auf .c endet (autocmd Filetype c), soll bei Eingabe von “:make” folgender Befehl ausgeführt werden: gcc dateiname.c -o dateiname. Der Eintrag in der vimrc sieht wie folgt aus:
autocmd FileType c let &makeprg='gcc % -o %<'
Das % steht hierbei für den Dateinamen mit der Dateiendung und das %< für den Dateinamen alleine.
Desweiteren ist es hilfreich die Fehlerausgaben des Compilers sich besser lesbar ausgeben zu lassen (hier: Datei:Zeile:Spalte:Meldung):
let &errorformat='%f:%l:%c:%m'
Nun zu der eigentlichen Konfigurierung:
Im folgenden werden zwei Funktionen definiert. Die erste speichert beim Aufruf die Datei (:w) und kompiliert den Quellcode (:make). Die zweite Funktion macht zunächst das gleiche, führt aber anschließend die kompilierte Datei aus (:!./dateiname).
func! _gcc() exec "w" exec "make" endfunc func! _gccs() exec "w" exec "make" exec "! ./%<" endfunc
Nun werden noch beide Aufrufe der Funktionen auf eine beliebiger Taste gelegt (Mapping). Hier lege ich sie auf die Tasten F3 und F4, wobei nmap bedeutet, dass dieses Mapping nur für den Normalmodus/Kommandomodus gültig ist.
nmap <F3> :call _gcc()<CR> nmap <F4> :call _gccs()<CR>
Und was ohnehin in jede vimrc hinein gehört, um die Syntax farblich hervorzuheben (syntax highlighting):
syntax on
Über ein Addon/Script kann man sich dann noch die Projektdateien in einer Art Dateibrowser anzeigen lassen. Es nennt sich sinnvollerweise project.
Damit man im Quellcode steht den Überblick behält unterstützt vim auch das Falten (Folding), womit sich geklammerte Terme ausblenden lassen. Das ist aber wiederum so umfangreich, dass ich hier in diesem Artikel nicht weiter darauf eingehen möchte. Eine gute Anlaufstelle ist, wie immer, die Hilfe (:help folding).
Da vim so unglaublich variabel ist, lässt er nahezu keine Wünsche offen und die oben beschriebene “IDE” ist nur eine von vielen Möglichkeiten.
PDF-Dateien zusammenfügen, aneinanderreihen
Manchmal hat man mehrere PDF-Dateien, die zu einer einzigen Datei zusammengefügt werden sollen.
Zum Beispiel habe ich mir ein Buch der Fachhochschulbibliothek als PDF herunterladen können. Das Buch lag im PDF-Format vor, war aber in die verschiedenen Kapitel unterteilt, sodass ich 8 einzelne Dateien vorliegen hatte.
Der Einfachheit halber machte ich mich nun auf die Suche nach einer Möglichkeit mehrere PDF-Dateien möglichst simpel aneinanderzureihen bzw. zusammenzufügen.
Hilfreich ist dabei der PDF-Interpreter Ghostscript. Er kann unter Ubuntu über die Paketverwaltung nachinstalliert werden.
sudo apt-get install gs
In der Anwendung sieht es beispielsweise so aus:
gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=gesamt.pdf -dBATCH datei-1.pdf datei-2.pdf datei-3.pdf
Es können beliebig viele Dateien zusammengefasst werden. Statt expliziten Dateiangaben kann man auch mit den üblichen Wildcards der Bash arbeiten (z.B.: datei-*.pdf).