0

入力ファイルからの文の最初の単語の最初の文字を大文字にするのに助けが必要ですinput.txt:

これが私の最初の文です。これが2 番目の文です。t帽子 1 は 3 番目です。

出力ファイルで出力を次のようにしたいoutput.txt

これが私の最初の文です。そして、これが 2 番目の文です。この 1 つは 3 番目です

4

3 に答える 3

3

これを試して:

sed -r "s/(^|\.\s+)./\U&/g" <input.txt >output.txt
于 2013-05-25T18:59:07.803 に答える
1

bash version 4仕方:

#!/usr/local/bin/bash

while IFS="." read -r -a line ; do
    for ((i=0; i<${#line[@]}; i++)) do
        if [[ $i > 0 ]]; then
            temp=$(echo ${line[$i]/ /})
            echo -n "${temp^}. "
        else
            echo -n "${line[$i]^}. "
        fi
    done
    echo
done < file
于 2013-05-25T21:28:21.870 に答える