Hallo zusammen,
kann mir vielleicht jemand helfen?
Ich interessiere mich für Bash-scripting und habe mir gerade ein paar Grundlagen angeeignet. Besonders gut kenne ich mich also noch nicht aus.
Ich habe ein kleines Script (Text-To-Speech-Programm starten) geschrieben , welches mich auffordert, zuerst eine Sprache (Englisch oder Deutsch) zu wählen und dann einen Text einzugeben (den würde ich aus der Zwischenablage einfügen). Danach wird eine Text-File generiert und davon dann das TTS-Programm "pico2wave" gestartet. Vielmehr ein zweites Script, welches ich der Seite https://wiki.ubuntuusers.de/Sprachausgabe/ entnommen habe. Die Auswahl zwischen Deutsch und Englisch wird ebenfalls getroffen.
Das script, das ich schrieb ,funktioniert auch, aber ich glaube, ich habe nicht den richtigen Befehl für den Text-Input. Ich kenne nur "read", aber der Text, der in die Variable geschrieben wird, wird nicht vollständig wiedergegeben , nur die erste Zeile. Gibt es einen anderen Befehl, der mir den Input von längeren Texten erlaubt, den ich dann in eine .txt-Datei schreiben kann?
Vielen Dank im voraus. Rosika 😐
P.S.:
Hier noch mein Script:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #!/bin/bash echo "Wählen Sie die Sprache aus: e für Englisch, d für Deutsch." read sprache if [ $sprache = "e" ] then echo "Bitte geben Sie den englischen Text ein." read texte echo $texte > /tmp/EText.txt cd /tmp svoxE.sh EText.txt rm /tmp/EText.txt fi sleep 2.0 if [ $sprache = "d" ] then echo "Bitte geben Sie den deutschen Text ein." read textd echo $textd > /tmp/DText.txt cd /tmp svoxD.sh DText.txt rm /tmp/DText.txt fi sleep 2.0 echo "Das Programm wird nun beendet." |