请问如何取文本每行首字符

sed 's/^\(.\).*$/\1' yourfile
cut -b1
gawk -F "" '{print $1}'
awk '{print substr($0,1,1)}'
awk '{printf "%.1s",$0}'
colrm 2 <file>newfile
cat file|while read i;do echo ${i:0:1};done

是正常的。在printf代碼中c轉義碼表示的是"字符",那麼{printf("%-1c\n",$0)}就會取得文件中每行的第一個“字符”,而如果用{printf("%-1s\n",$0)}的話,則就會取得文件中每行的第一個“字符串”,而不是第一個“字符”。

針對整個文件可以(文件中的行的首個字符可以是數字):
awk '{printf("%-1c\n",$0)}'

針對某個數字可以(例如:65:
awk 'BEGIN{printf("%-1c\n,"65")}'

你可能感兴趣的:(请问如何取文本每行首字符)