Here document und seine Tücken

Smalltalk
Antworten
Benutzeravatar
whisper
Beiträge: 3198
Registriert: 23.09.2002 14:32:21
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Here document und seine Tücken

Beitrag von whisper » 02.09.2023 17:21:15

Eben hatte ich eine Erleuchtung. Ich hatte ein mehrzeiliges HERE Dockument

Code: Alles auswählen

echo "bla fasel"
cat << TXT
viel zu erzählen  'exclude_list'
viele zeilen
irgendwo dann
mal `exclude_list `
wieder text ohne ende
TXT
Das führte immer zu einem Fehler in Zeile nr 2.
Ich hatte mich tot gesucht.
Zeile 6 hatte ich nicht entdeckt.(es war vieeel mehr Text, hier nur die Demo)
Chat-GBT empfahl mir als limit_string mal 'TXT' zunehmen, um die Interpretation von backtics zu vermeiden.
Dachte was solls, probierste mal...
Bingo!
Dann fand ich es auch in Zeile 6.
Aber die Methode, den limit_string in einfache Anführungszeichen zu packen kannte ich vorher nicht!
Damit werden alle Anführungszeichen ignoriert und unverändert ausgegeben

Braves, liebes gutes chat-GBT ich lade dich zum Geburtstag ein :mrgreen:

tobo
Beiträge: 2038
Registriert: 10.12.2008 10:51:41

Re: Here document und seine Tücken

Beitrag von tobo » 03.09.2023 21:21:55

Das funktioniert wohl bei jeder Art von Quoting:

Code: Alles auswählen

$ var=42
$ cat<<'EOF' ## oder cat<<"EOF" oder cat<<\EOF oder cat<<E\OF oder cat<<EO\F
echo $var
`testing`
'open
EOF
echo $var
`testing`
'open
$
Braves, liebes gutes chat-GBT ich lade dich zum Geburtstag ein
Wird nicht kommen - So wie das S in Debian für Security steht, steht das P in ChatGBT für Pretrained.

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

Re: Here document und seine Tücken

Beitrag von Meillo » 03.09.2023 21:29:54

whisper hat geschrieben: ↑ zum Beitrag ↑
02.09.2023 17:21:15
Chat-GBT empfahl mir als limit_string mal 'TXT' zunehmen, um die Interpretation von backtics zu vermeiden.
Indem man den Delimiter quoted wird das Heredoc interpretiert als waere es in Single-Quotes. Standardmaessig wird es interpretiert als waere es in Double-Quotes. Aber natuerlich, das muss man erstmal wissen ... oder jemanden (wie das DFDE) fragen. ;-)
Use ed once in a while!

Benutzeravatar
whisper
Beiträge: 3198
Registriert: 23.09.2002 14:32:21
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Here document und seine Tücken

Beitrag von whisper » 03.09.2023 21:31:38

tobo hat geschrieben: ↑ zum Beitrag ↑
03.09.2023 21:21:55
Das funktioniert wohl bei jeder Art von Quoting:
Ja klar, kannte ich bisher aber nicht. Bewusst nirgendwo geshen, wohl auch noch nie selbst gebraucht.
Wollte es nur mal los werden

@:Wird nicht kommen - So wie das S in Debian für Security steht, steht das P in ChatGBT für Pretrained.

Häh? du meinst wie Tür, nur ohne X?
:mrgreen:

tobo
Beiträge: 2038
Registriert: 10.12.2008 10:51:41

Re: Here document und seine Tücken

Beitrag von tobo » 03.09.2023 22:11:08

Ne, ich meinte deinen Adressaten erreicht die Einladung wohl nicht.

Benutzeravatar
whisper
Beiträge: 3198
Registriert: 23.09.2002 14:32:21
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Here document und seine Tücken

Beitrag von whisper » 04.09.2023 11:05:24

tobo hat geschrieben: ↑ zum Beitrag ↑
03.09.2023 22:11:08
Ne, ich meinte deinen Adressaten erreicht die Einladung wohl nicht.
Ja, achso ein B hatte iich da drin... :roll:
Mann das war ein Scherz :P
Manchmal aber wirklich schon frappierend.
Neulich bat ich um Hilfe, fand dann selber aber die Lösung, teilte das GPT mit und bekam ein Lob, wie ich das gelöst hatte...
4246

Antworten