sed
Burada bir etiketiniz olduğundan bir sed
cevap:
echo "$word" | sed -e "{ s/^\(.\).*/\1/ ; q }"
Bunlardan hoşlananlar için oyun oynayın (Yapıyorum!):
{
s
: bir ikame rutini başlat
/
: Neyin değiştirileceğini belirlemeye başlayın
^\(.\)
: Grup 1'deki ilk karakteri yakala
.*
:, satırın geri kalanının oyuncu değişikliği yapacağından emin olun
/
: değiştirmeyi belirtmeye başlayın
\1
: Grup 1'i ekle
/
: Gerisi atılır;
q
: sed
Eğer varsa bu bloğu diğer satırlar için tekrarlamaması için çıkın .
}
Bu eğlenceliydi! :)
Ayrıca kullanabilirsiniz grep
vb ama iseniz magick hala imo daha iyi bir çözümdür. (Bunu yapmak için POSIX değişken genişletmesini kullanmaya çalışırken bir saat kadar harcadım ama yapamadım )bash
${x:0:1}
:(
-c
POSIX başlığında herhangi bir seçenek olmadığını unutmayın : < unix.com/man-page/posix/1/head >.