小编zev*_*lag的帖子

echo BASH变量覆盖文本问题

OS X 10.6.5,BASH

当我运行这个:

echo $IP; echo of; echo $IPLINES
Run Code Online (Sandbox Code Playgroud)

我得到这个输出:

219.80.4.150:3128
of
1108
Run Code Online (Sandbox Code Playgroud)

当我运行这个:

echo $IP of $IPLINES
Run Code Online (Sandbox Code Playgroud)

我得到这个输出:

 of 1108.150:3128
Run Code Online (Sandbox Code Playgroud)

我期望得到:

219.80.4.150:3128 of 1108
Run Code Online (Sandbox Code Playgroud)

什么会导致我得到的扭曲输出?

实际的脚本是这样的:

#!/bin/bash

IPLINES=`cat a.txt | wc -l | awk '{print $1}'`

if [ $IPLINES > 1 ]; then
    LINE=`expr $RANDOM % $IPLINES + 1`
    IP=`head -$LINE a.txt | tail -1`
    sed -e "${LINE}d" -i .b a.txt

    echo $IP of $IPLINES
fi
Run Code Online (Sandbox Code Playgroud)

macos bash echo

4
推荐指数
1
解决办法
4741
查看次数

标签 统计

bash ×1

echo ×1

macos ×1