OsunSeyi
Foren As
Hallo !
Hab´ ein Script geschrieben, was vermittels der Enter-Taste alle Text-Dateien in einem Verzeichnisbaum durchblättert und durch drücken von '1 + Enter' die gerade angezeigte Datei zum editieren öffnet.
Meiner ansicht nach praktisch, wenn man alle Schriftstücke in einem Verzeichnis einsortiert hat, aber zum öffnen einer einzelnen Datei nicht immer ad hoc weiß, wo sie gerade genau steckt.
Einfach alles durchblättern und öffnen.
Leider sind meine Programierkentnisse eher noch etwas dürftig...
Ich erlaube mir mal, das Ganze hier abzudrucken.
Das Script beruht auf dem (warscheinlich eher schwachsinnigen) Konzept, eine Datei zu generieren (in dem Fall text_tmp), die zunächst (nur beim 1.Mal) ausführbar gemacht werden muß.
Frage nun:
1. geht´s auch eleganter ?
2. gibt´s evtl sowas schon in einer korrekt & schnell arbeitenden Variante ?
3. woraus erklärt sich, daß einzellne Dateien nicht korrekt dargestellt werden ?
viele Grüße,
Tom
PS
EMACS soll sowas können...
Hab´ ein Script geschrieben, was vermittels der Enter-Taste alle Text-Dateien in einem Verzeichnisbaum durchblättert und durch drücken von '1 + Enter' die gerade angezeigte Datei zum editieren öffnet.
Meiner ansicht nach praktisch, wenn man alle Schriftstücke in einem Verzeichnis einsortiert hat, aber zum öffnen einer einzelnen Datei nicht immer ad hoc weiß, wo sie gerade genau steckt.
Einfach alles durchblättern und öffnen.
Leider sind meine Programierkentnisse eher noch etwas dürftig...
Ich erlaube mir mal, das Ganze hier abzudrucken.
Das Script beruht auf dem (warscheinlich eher schwachsinnigen) Konzept, eine Datei zu generieren (in dem Fall text_tmp), die zunächst (nur beim 1.Mal) ausführbar gemacht werden muß.
Code:
#!/bin/sh
cd
datei="/home/tom/DAT/D/BIN/BIN_AWK/text_tmp"
dat="DAT/A"
# dat=$1
for i in `find $dat -type f`; do
# Datei einlesen:
DAT="/home/tom/"$i
text=$(cat $DAT | tr -s xX~#_.:- | head -c 1500)
code=$(file $DAT | awk '{print $2}')
if [ "$code" = "UTF-8" -o "$code" = "ISO-8859" ];
then
if [ "$code" = "UTF-8" ];
then
text=$(cat $DAT | tr -s xX~#_.:- | head -c 1500 | iconv -s -f UTF-8 -t ISO-8859-15 2>/dev/null)
fi
# ausführende Datei schreiben:
echo "#!/bin/sh" > $datei
echo "cat <<!" >> $datei
echo "("$code")"$i":" >> $datei
echo $text >> $datei
echo "~~~~~~~~~~~~~~~~~~~~~~~" >> $datei
echo "!" >> $datei
echo "echo -n ' '" >> $datei
echo "read WAHL" >> $datei
echo "case \"\$WAHL\" in" >> $datei
echo "1)" >> $datei
echo " leafpad $DAT" >> $datei
echo " ;;" >> $datei
echo "*)" >> $datei
echo "esac" >> $datei
#ausfuehren:
$datei
fi
done
exit 0
1. geht´s auch eleganter ?
2. gibt´s evtl sowas schon in einer korrekt & schnell arbeitenden Variante ?
3. woraus erklärt sich, daß einzellne Dateien nicht korrekt dargestellt werden ?
viele Grüße,
Tom
PS
EMACS soll sowas können...
Zuletzt bearbeitet: