Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═}╝"

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═}╝"

Beitrag von DEBIANUNDANDREAS » 22.08.2016 15:18:48

Hallo ich habe ubuntuserver 16.04.1 LTS und ubuntu 14.04.5 (desktopumgebung gnome) paralell installiert.
Dazu bekamm ich ein Script das einen Rahmen um einen Text zeichnen soll>>>

Code: Alles auswählen

Text="Hallo Welt"; echo -e "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═}╝"
Bei mir funktioniert das Script in Ubuntu 14.04.5 Desktopumgebung gnome.
Das Script funktioniert im Ubuntuserver 16.04.1 nicht.
Bad substitution
Wer kann mir beim anpassen des Script >>>

Code: Alles auswählen

Text="Hallo Welt"; echo -e "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═}╝"
helfen?
Es geht mir um eine Lösung , dass ein Script dass einen Rahmen um einen Text zeichnen soll für Ubuntuserver 16.04.1, bei geänderten Zeichensatz!?

Benutzeravatar
Meillo
Moderator
Beiträge: 8818
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von Meillo » 22.08.2016 16:06:02

Wahrscheinlich verwendest du die falsche Shell im Shebang.
Use ed once in a while!

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von rendegast » 22.08.2016 16:07:03

Auf dem einen Rechner läuft es wohl unter bash/zsh,
auf dem anderen unter dash (posix).
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 22.08.2016 16:11:51

Ich hatte es mit #!bin/bash versucht aber ich bekomme
Bad substitution

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von KBDCALLS » 22.08.2016 16:26:03

Funktioniert doch getest mit der Bash . Auf der Kommandozeile und als Script.

Da fehlt ein Slash
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 22.08.2016 16:35:52

Jetzt ist es richtig >>>

Code: Alles auswählen

#!/bin/bash
aber ändern tut es nicht,
Bad substitution

guennid

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von guennid » 22.08.2016 16:50:02

Da ist ein Fehler in deiner Signatur:

Es muss entweder heißen "Wann ich ein Forum wechsele, ..." oder "Ob ich ein Forum wechsele, ..."

"Wenn", das geht gar nicht. :mrgreen:

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von KBDCALLS » 22.08.2016 16:52:42

guennid hat geschrieben:Da ist ein Fehler in deiner Signatur:

Es muss entweder heißen "Wann ich ein Forum wechsele, ..." oder "Ob ich ein Forum wechsele, ..."

"Wenn", das geht gar nicht. :mrgreen:
Da kann jemand den Oberlehrer nicht lassen :-)
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

guennid

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von guennid » 22.08.2016 16:58:45

Na ja, ich geb' zu, mit der Ironie ist das so'ne Sache. Die einen verstehn's, die anderen nicht. :oops:

Benutzeravatar
TRex
Moderator
Beiträge: 8084
Registriert: 23.11.2006 12:23:54
Wohnort: KA

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von TRex » 22.08.2016 17:32:51

Ich finde, solange capslockandy nicht mit einem vollständigen code-block mit dem vollständigen Script rausrückt und die Ausgaben der Ausführung ebenso in einem code-block demonstriert, darf guennid in der Zwischenzeit auch den Oberlehrer raushängen lassen :twisted:
Jesus saves. Buddha does incremental backups.
Windows ist doof, Linux funktioniert nichtDon't break debian!Wie man widerspricht

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 22.08.2016 17:39:10

Der vollständige Code lautet >>>

Code: Alles auswählen

#!/bin/bash
Text="Hallo Welt"; echo -e "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═}╝"
Wie geht es nun weiter?

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 22.08.2016 17:50:17

Es muss doch jemand geben der die Substitution zurecht biegen kann !?

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von KBDCALLS » 22.08.2016 17:56:49

Das ist korrekt hab das Teil so kopiert per Copy und Paste Einmal in die Konsole dann als Script mit der Bash und als Probe noch mit der ZSH . Hat in allen drei Fällen das ausgespuckt was es sollte.

Egebnis des Scriptes mit der zsh
  • 431
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 22.08.2016 18:01:55

@KBDCALLS
Ja im ubuntu 14.04.5 LTS gnom Desktopumgebung funktioniert das Script. Aber in ubuntu server nicht.

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von KBDCALLS » 22.08.2016 18:09:46

Dann dürfte wohl alles klar sein. Dann löuft vermutlich die Dash Dann gibts genau den beschrieben Fehler. Die Shebang umgeändert auf /bin/dash

  • Code: Alles auswählen

    matthias@tatjana:~$ tex
    /home/matthias/bin/tex: 2: /home/matthias/bin/tex: Bad substitution
    matthias@tatjana:~$ 
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 22.08.2016 18:38:02

Code: Alles auswählen

#!/bin/dash
Text="Hallo Welt"; echo -e "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═}╝"
Bad substitution

Benutzeravatar
Meillo
Moderator
Beiträge: 8818
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von Meillo » 22.08.2016 18:59:47

Alle relevanten Informationen von unserer Seite liegen auf dem Tisch. Poste du nun vollstaendige Shell-Sessions (inkl. cat, `ls -l' auf das Script und Co.), dann kann's weiter gehen. Stupides Wiederholen von unzulaenglicher Information hilft nicht weiter.
Use ed once in a while!

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 22.08.2016 20:12:06

So wie gewünscht >>>

Code: Alles auswählen

ls -l 
-rwxrwxrwx 1 root root 98 Aug 22 18:35 helloworld.sh
#!/bin/dash
Text="Hallo Welt"
echo -e "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═}╝"

halo44
Beiträge: 703
Registriert: 12.05.2015 15:19:13

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von halo44 » 22.08.2016 20:28:52

Lass es mal auf /bin/bash und rufe es aus dem Pfad des Skripts mit

Code: Alles auswählen

./skriptname (so wie das Skript heisst)
auf. Was passiert dann?

Gruss H.

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

An den User @halo44

Beitrag von DEBIANUNDANDREAS » 22.08.2016 20:38:05

Danke @halo44 jetzt hat es funktioniert, aber die Rahmensymbole sind falsch.
Statt ╔ wird ein Karo dargestellt. Der Rahmen besteht nur aus Karos.
Wie kann man das ändern?

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22359
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von KBDCALLS » 22.08.2016 20:41:23

Da hab ich doch schon vorhergeschrieben, das die dash genau diesen Fehler produziert. Mit der Bash und zsh kein Problem. Nur lesen muß mans


viewtopic.php?f=8&t=161993#p1102409

Was ergibt
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Script anpassen "╔${Text//?/═}╗\n║${Text}║\n╚${Text//?/═

Beitrag von DEBIANUNDANDREAS » 23.08.2016 06:13:39

Dein kommando
env |grep LC
ergibt nichts.

Benutzeravatar
Meillo
Moderator
Beiträge: 8818
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: An den User @halo44

Beitrag von Meillo » 23.08.2016 07:07:32

DEBIANUNDANDREAS hat geschrieben: Statt ╔ wird ein Karo dargestellt. Der Rahmen besteht nur aus Karos.
Die Darstellung dieser Zeichen erfordert mehrere Dinge:
- Den passenden Zeichensatz (Unicode)
- Die passende Kodierung (UTF-8)
- Einen Font der die Zeichen enthaelt
- Eine Shell (inkl. echo-Builtin), die UTF-8/Unicode-faehig ist
- Einen Terminalemulator, der UTF-8/Unicode-faehig ist und den passenden Font verwendet

Die Umgebungsvariable LC_ALL auf so etwas wie ``de_DE.UTF-8'' zu setzen waere mal ein Schritt.
Use ed once in a while!

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Umgebungsvariable LC_ALL

Beitrag von DEBIANUNDANDREAS » 23.08.2016 07:40:55

Wie wird die Umgebungsvariable LC_ALL auf ``de_DE.UTF-8'' gesetzt?

in /etc/default/locale >>>
# File generated by update-locale
LANG=de_DE.UTF-8

Benutzeravatar
Meillo
Moderator
Beiträge: 8818
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Umgebungsvariable LC_ALL

Beitrag von Meillo » 23.08.2016 08:56:48

DEBIANUNDANDREAS hat geschrieben:Wie wird die Umgebungsvariable LC_ALL auf ``de_DE.UTF-8'' gesetzt?
... wieso ufert denn wirklich jedes Thema von dir aus?

Ich hab keine Lust mehr und bin hier raus. Um mich zukuenftig vor immer wieder dem gleichen Erlebnis zu schuetzen werde ich nun meine Ignore-List erweitern ... Tja, so geht das.
Use ed once in a while!

Antworten