Bash shell字符串包含打印全字

时间:2015-08-27 19:35:08

标签: string bash shell for-loop contains

代码:

READLINE=$(sudo /bin/cat < "file.txt");
IFS=$';'
for i in $READLINE;
do
txt=$txt" ""$i";
done
unset IFS

for x in $arr
do
if [[ $txt == *$x* ]] ; then
echo "$x is in the txt file";

输出file.txt

  

telecomtest;耶士;

循环输出:

  

telecomtest在txt文件中   tel在txt文件中

我只想打印完整的单词而不是它的一部分。
这意味着只打印telecomtest而不是tel。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:0)

您的$arr似乎同时包含telecomtesttel。由于您没有告诉我们如何分配$arr,所以其他一切都是猜测。你删除了太多的脚本在这里发布了吗?还有fi缺少这个有效的shell语法。

请为我们提供最小的可运行脚本,包括file.txt的一些精简内容,以便我们能够重现该问题。通常这会立即发现问题。