#!/bin/bash
echo "$(curl -s -I https://google.com|grep Server)" abc
vrátí:
abcer: gws
a bash -x
ukazuje:
++ grep Server
++ curl -s -I https://google.com
' abco 'Server: gws
abcer: gws
ale
echo abc "$(curl -s -I https://google.com|grep Server)"`
vrací
abc Server: gws
Jinými slovy, pokud přidám text ZA příkazem curl, zkazí se, ale je v pořádku, když ho přidám před curl.
Co se děje? Nemohu na to přijít.
Přijatá odpověď:
echo $(curl -s -I https://google.com|grep Server)|cat -A
ukazuje, že hodnota vrácená curl má ^M (návrat vozíku). Když vytisknete výstup zvlnění, návrat vozíku přesune „kurzor“ zpět na začátek řádku, kde pak vytiskne „abc“, čímž přepíše „Serv“.
Při druhém pokusu nemá návrat vozíku žádný zjevný účinek.
Můžete umístit více spustitelných skriptů do jednoho adresáře a zajištěním tohoto adresáře zpřístupnit všechny tyto příkazy?
Jak se připojit a odeslat data do sériového portu Bluetooth v systému Linux?