preload
Mai 10
Situation

You want to operate on a linux, unix or mac system some files in a bash script and do some file operations like modifying the text content or moving the files to another location depending on the filename, content or another mathinc pattern.

Problem

Wondered why you have problems with windows files in a network when looping over them? Linux takes whitespaces in file name as line separator so that echoing the file will cause a separate line and so you cannot operate on this file.

Solution

I guess it is called Instruction Field Separator or something. You have to set this only to line break and not to whitespaces. First save the old variable content, then set the new content so that the bash do not takes whitespaces as line separators

1
2
3
4
5
6
7
8
9
OLDIFS=$IFS
IFS=$(echo -en "\n\b")
 
for FILE in $(find . -name '*.txt)
do
   echo $FILE
done
 
$IFS = $OLDIFS
Tagged with:
Mai 25

Die Time Capsule von Apple ist wohl eines der besten Gerätschaften, die Apple in letzter Zeit herausgebracht hat. Mein MacBook sichert jeden Tag, jede Stunde automatisch und auf der 1 TB großen Festplatte ist auch noch genug Platz um Bilder oder Musik unterzubringen.

Es gibt jedoch Probleme mit einigen Druckern, welche über USB an die Time Capsule angeschlossen werden, damit man von allen Rechnern aus dem Netz darauf drucken kann. Dazu gehört auch der Samsung 2010R Laserdrucker. Mit einigen anderen Samsung Modellen besteht das Problem ebenfalls, wie ich nach einigen Recherchen herausgefunden habe.

Das Problem sieht wie folgt aus:  Der Drucker druckt die erste Seite über Word 2008 sofort, aber bei allen anderen Programmen dauert es viele Minuten, manchmal sogar bis zu 10 Minuten, ehe überhaupt die erste Seite gedruckt wird.

Folgende Lösung gibt es dafür:

  • Samsung 2010 Drucker über USB an die Time Capsule anschließen
  • Mit dem Programm “Bonjour Browser” nachschauen, welche Services der Drucker benutzt
  • Ausschau halten nach “Printer PDL Data Stream”
  • Die IP und den Port merken (meistens IP: 10.0.1.1 und Port 9100)
  • Mit+ einen neuen Drucker hinzufügen
  • “IP” auswählen oben im Menu
  • Als Protokoll “HP Jetdirect – Socket” auswählen
  • Die IP-Adresse eingeben (keinen Port angeben)
  • Warteschlangennamen leer lassen!
  • Namen angeben den man möchte (Name des Druckers)
  • “Anderen Treiber” auswählen und den passenden Treiber des Druckers (hier Samsung 2010) aus  /Library/Printers/PPDs/Contents/Resources/ auswählen.
  • Hinweis: Der Druckertreiber muss natürlich vorher installiert sein, falls nicht vorhanden.

Jetzt kann man wie gewohnt schnell drucken.

Das ist natürlich nur ein Workaround. Komischerweise ist das Problem nur bei MacOS 10.5.2, bei 10.4 kann wie gewohnt gedruckt werden. Naja, scheint wohl hoffentlich bald von Apple gefixt zu werden.

Tagged with: