Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Diese Webseite hat durch Umstruktirierung leider eine größere Anzahl von toten Links bekommen nachdem sie umstrukturiert wurde. Das gefällt den Suchmaschinen nicht. Deshalb habe ich ein go Programm geschrieben welches mir dabei geholfen hat die Seiten zu finden die tote Links enthalten und auch gleichzeitig eine sitemap für diese Webseite erstellt.

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

I just stumbled upon a nice way to enhance the bash debug trace output format (See here for the source).

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

A lot of time you have to split a string into pieces. There exist various ways to get it done. For example you can use sed or grep with a regular experssion. But there are much more efiicient ways available by using plain bash:

Question: How to extract the first and second path from the given string s="someString:/path1/path2/path3/path3/test.bin"

Solution: /path1/path2

Use cut:

echo $(cut -f 2-3 -d / <<< "$s")

Use sed:

echo $(sed -r 's/[^:]+:((\/[^/]+){2})(.*)/\1/' <<< "$s")

Use plain bash and read:

IFS=/ read x a b y <<< "$s"; echo "/$a/$b"

Use plain bash and set:

IFS=/ eval set -- \$s; echo "/$2/$3"
Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Als ich versuchte ein bash Script welches sich selbst aktualisiert sobald eine neuere Version verfügbar ist und sich selbst noch einmal mit der neuen Version aufruft mit den initialen Scripaufrufparametern bekam ich Probleme. Beim erneuten Aufruf wurden die Parameter nicht mehr genau so übergeben wie sie initial eingegeben wurden. Besonders Leerzeichen in Stringparametern bereiteten Probleme. Der Scripupdate soll ja für den Aufrufen unbemerkt stattfinden und der Aufrufer immer die aktuellste Version benutzen.

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Wenn man git zur Codeverwaltung benutzt lernt man immer wieder neue Befehle kennen, die einem bei der Codeveraltung helfen. Anbei meine stetig wachsende Sammlung von Befehlen die ich oft - aber auch weniger häufig benutze um meinen Code zu verwalten. Speziell die weniger häufig benutzten muss man immer wieder mal nachsehen.

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Bislang habe ich meinen Code in einem lokalen Git auf meinem Desktop verwaltet. Da ich auch remote von einem lokalen Labtop oder per VPN verbundenen remoten Labtop auf den Code zugreifen möchte musste das lokale Git Repository umgestellt werden. Bei mir läuft eine kleine Raspberry als LAN Server und der ist dafür ideal.

Es finden sich diverse Beiträge zu dem Thema im Netz aber es dauerte etwas bis ich die optimale Lösung gefunden habe. Es ist nicht schwer wenn man weiss wie.

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Es ist ganz hilfreich wenn man mit einer Raspberry bestimmte Schaltvorgänge zeit- und sonnenauf- sowie -untergangsgesteuert vornehmen kann. Deshalb habe ich mich mal ein wenig umgesehen wie man sowas leicht rausbekommen kann. Dabei habe ich APIs im Internet gefunden, die bei der Ermittlung von beiden Informationen helfen und dann ein kleines Python Script bedingt durch die API-Nutzung innerhalb kürzester Zeit geschrieben. gneadr hat noch eine andere interessante Variante herausgefunden die ich noch etwas modifiziert habe.

 

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Eben bin ich über einen sehr schönen und ausführlichen Beitrag (all about redirections) gestolpert, in dem die bash Redirections erklärt werden. Nach dem Lesen des Artikels hat man sie verstanden. Ist allerdings in Englisch. Dieser Artikel ist einer von fünfen in der Reihe 'bash one-liners' - Working with files, working with strings, working with history und navigating around, die ebenso sehr hilfreich sind.

Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv
Python allows to bundle a lot of Python files with py2exe in one executable for Windows. That way a simple call of this exe allows to start the Python program. No installation is required. I don't like windows and use Linux instead. That's why I had to search for a similar solution on Linux. I just want to have all my Python code bundled in one shell script and to be able to distribute one bash file only instead of the whole set of python files.
 
Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv

Ein Backup von wichtigen Daten ist das A und O wenn man mit Computeren arbeitet. Das gilt auch für den privaten Bereich, wo man private Photos, Videos, Dokumente, eMail usw hat und nicht verlieren möchte. Dazu gibt es viele Tools unter Linux wie z.B. rsync, rsnapshot usw. Ab und zu sollte man aber auch testen, oder der Backup identisch ist mit dem Original, denn es ist nichts so unangenehm, als wenn man in dem Fall, wo man das Backup benötigt, dass es nicht vollständig ist.

Bewertung: 3 / 5

Stern aktivStern aktivStern aktivStern inaktivStern inaktiv
I just faced an issue I thought should be easy to solve. I wanted to know which Linux distribution a bash script runs on. There exists a proposal of the FSB (Free Standards Group) to implement lsb_release which delivers all the info.Unfortunately it's not implemented by all Linux distributions so I installed various distributions on VMWare to get a clue how to write code to extract the Linux distribution. Finally I wrote a bash script and python script to extract the Linux distribution.
Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv
Da ich gerade dabei bin mich mit Python vertraut zu machen. Anbei Links die mir dabei geholfen haben bzw noch helfen Python effektiv einzusetzen.
 
Stern inaktivStern inaktivStern inaktivStern inaktivStern inaktiv
Wer ist nicht schon bei der Umrechung von Fahrenheit, Reaumur und Celsius verzweifelt. Letzten Winter war es sehr kalt und im nciht mehr existenten Minthouse Forum gab es Diskussionen bzgl der Umrechnungen. Deshalb habe ich ein kleines Groovy Programm geschrieben welches typische Groovyfunktionalitäten wie z.B. closures benutzt, um diese Umrechnungen vorzunehmen. Das Schöne an Groovy ist, das diese Programme automatisch unter der Decke den java Compiler aufrufen. Damit entfällt der typische Compile an Run Schritt bei Java und ermöglich schnellere Entwicklung und Test von Groovy Programmen. Einfach das Groovy Programm ändern und einfach wieder aufrufen. So wie man es von Python kennt. Vor dem Aufruf muss man allerdings erste Groovy installiert haben. Unter Linux geht das z.B. mit apt-get install groovy