一个很有意思的邮箱表示方法

链接在这里

echo -e ‘#define cat(c,d) c##.d \n #define mb(a,b) a##@b \n mb(cat(xiyou,wangcong),cat(gmail,com))’| gcc -E -xc – 2>/dev/null |tail -n 1

看看这个语句的输出

[email protected]

这是怎么做到的呢?

echo -e ‘#define cat(c,d) c##.d \n #define mb(a,b) a##@b \n mb(cat(xiyou,wangcong),cat(gmail,com))’

用来生成一段C代码,只有宏定义的C代码。

gcc -E -xc – 2>/dev/null

再用gcc进行伪编译(-E),-xc指定这是c代码。这里当然会出错,用2>/dev/null将出错信息删除

tail -n 1

把最后一行输出,这样就是所要的邮件地址了