所以我将所有这些单词都放在一个文本文件中:
dfasdfasdf
adsgad
fghjast
hdasfh
adfhadfn
我必须显示最小单词的字符数,而不使用“awk”和“sed”命令...我已经尝试了 wc 的所有变体,但它适用于全文文件,而不仅仅是每行。
编辑:我很抱歉没有提供有关该主题的更多详细信息。我正在学习 Shell 基础知识,还没有开始在 Linux 上编程。我的这个练习的重点是在屏幕上显示最短的单词有多少个字符。到目前为止,我只学习了命令 tr、cp、cut、sort、head、tail、grep、find、wc...所以我不能使用 awk/sed/我在互联网上学到的任何其他命令或对此进行编程...
答案1
使用参数扩展,您可以获得变量内容的长度:
${#variable}
只需逐行阅读文件并记住最短的单词:
while read word ; do
: ${shortest:=$word} # Initialize $shortest if not set.
if [ ${#word} -lt ${#shortest} ] ; then
shortest=$word
fi
done < file.txt
echo "$shortest"