Da Sie ein sedTag haben, ist hier eine sedAntwort:
echo "$word" | sed -e "{ s/^\(.\).*/\1/ ; q }"
Spiel für Spiel für diejenigen, die diese genießen (das tue ich!):
{
s: Starten Sie eine Substitutionsroutine
/: Geben Sie an, was ersetzt werden soll
^\(.\): Erfassen Sie das erste Zeichen in Gruppe 1
.*:, stellen Sie sicher, dass der Rest der Zeile ersetzt wird
/: Geben Sie den Ersatz an
\1: Gruppe 1 einfügen
/: Der Rest wird verworfen;
q: Beenden, seddamit dieser Block nicht für andere Zeilen wiederholt wird, falls vorhanden.
}
Na das war ein Spaß! :)Sie können auch grepund etc verwenden, aber wenn Sie in bashder ${x:0:1}Magie sind, ist immer noch die bessere Lösung imo. (Ich habe ungefähr eine Stunde damit verbracht, die POSIX-Variablenerweiterung zu verwenden, konnte dies aber nicht :( )
-cin POSIX head keine Option gibt : < unix.com/man-page/posix/1/head >.