2.14 拼写检查与词典操作

《Linux Shell 脚本攻略(第 2 版)》读书笔记

目录/usr/share/dict/包含了一些词典文件。“词典文件”就是包含了词典单词列表的文本文件。我们可以利用这个列表来检查某个单词是否为词典中的单词。

检查给定的单词是否为词典中的单词

#!/bin/bash
#文件名:checkword.sh
word=$1
grep -q "^$1$" /usr/share/dict/words
if [ $? -eq 0 ]; then
  echo $word is a dictionary word
else
  echo $word is not a dictionary word
fi
  • ^标记单词的开始,$标记单词的结束。
  • -q禁止产生任何输出。

用拼写检查命令aspell来核查某个单词是否在词典中

#!/bin/bash
#文件名:aspellcheck.sh
word=$1
output=$(echo \"$word\" | aspell list)

if [ -z $output ]; then
  echo $word is a dictionary word
else
  echo $word is not a dictionary word
fi

列出文件中以特定单词起头的所有单词

$ look word filepath
#或者
$ grep "^word" filepath

在默认情况下,如果没有给出文件参数,look命令会使用默认词典(/usr/share/dict/words)。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。