私は私が入力したテキストの後にそのテキストの最初の2文字を印刷するプログラムが欲しいです。これを行う方法はありますか?
#!/bin/bash
#
# Get text from user repeatedly
#
echo "Type away..."
while read TEXT
do
echo You typed $TEXT
if [ "$TEXT" = "quit" ] || [ "$TEXT" = "q" ] || [ "$TEXT" = "Q" ] || [ "$TEXT" = "QUIT" ]; then
echo So I quit!
exit 0
fi
done
echo "HELP!"
ベストアンサー1
最初の文字をどこで取得できるかなどの表記法を使用できます${var:0:N}
変わりやすい変数名です。窒素必要な文字数です。したがって、あなたの質問について${TEXT:0:2}
はTEXT
。例:
TEXT="Some text"
echo "\$TEXT: '$TEXT', first 2 chars: '${TEXT:0:2}'"
出力:
$TEXT: 'Some text', first 2 chars: 'So'
Linux文書化プロジェクトという章があります。「文字列操作」。 「サブストリングの抽出」セクションには、この表記の詳細があります。