各行の最初の文字をファイルの最後まで小文字に変換したいと思います。シェルスクリプトを使用してこれを行うにはどうすればよいですか?
私はこれを試しました:
plat=`echo $plat |cut -c1 |tr [:upper:] [:lower:]``echo $plat |cut -c2-`
ただし、これは最初の文字のみを小文字に変換します。
私のファイルは次のようになります。
Apple
Orange
Grape
期待される結果:
apple
orange
grape
あなたはそれを行うことができますsed:
sed -e 's/./\L&/' Shell.txt
(やったほうが安全かもしれません。
sed -e 's/^./\L&\E/' Shell.txt
これを拡張したい場合。)
Pure Bash 4.0+ 、パラメータ置換:
>"$outfile" # empty output file
while read ; do
echo "${REPLY,}" >> "$outfile" # 1. character to lowercase
done < "$infile"
mv "$outfile" "$infile"
Try:
plat=`echo $plat |cut -c1 |tr '[:upper:]' '[:lower:]'``echo $plat |cut -c2-`