我有一个带有内容的文本文件“ temp”
Hai! How are you
我想将同一文件的内容更改为
HAI! HOW ARE YOU
当我使用
cat temp |tr a-z A-Z
(---仅输出显示为大写。文件保持不变...。)。我希望更改文件内容。
在使用cat temp |tr a-z A-Z>>temp
时(-附加了输出,未覆盖)。请帮助
答案 0 :(得分:0)
您可以使用一个临时文件来存储结果:
cat temp | tr "a-z" "A-Z" > t
rm temp
mv t temp
使用sed
应该也可以:
sed -i 's/./\U&/g' temp
答案 1 :(得分:0)
从temp读取内容,将其转换为大写并将其写回temp:
echo "$(awk '{print toupper($0)}' < temp)" > temp
答案 2 :(得分:0)
cat temp |tr a-z A-Z>>temp
不会因为双'>'
而覆盖要覆盖内容,请使用单个'>'
cat temp |tr a-z A-Z>temp