nc missing option -z

Ed Greshko Ed.Greshko at greshko.com
Wed Feb 13 13:57:05 UTC 2013


On 02/13/2013 09:44 PM, inode0 wrote:
> On Wed, Feb 13, 2013 at 3:12 AM, Suvayu Ali <fatkasuvayu+linux at gmail.com> wrote:
>> Hi John,
>>
>> On Tue, Feb 12, 2013 at 08:37:27PM -0600, inode0 wrote:
>>> Something like this perhaps.
>>>
>>> $ 2>/dev/null >/dev/tcp/imap.gmail.com/993 && sync-my-email.sh
>> This works, but I don't think I understand it.  Could you please
>> explain?
> Bash provides built-in ways to manipulate sockets directly. You can
> read the REDIRECTION section of the bash man page to get the basics.
> Commonly these are used in conjunction with exec to open a socket,
> read and/or write data to the socket, then close the socket.
>
> In the simple case here we just have bash attempt to open a tcp socket
> to imap.gmail.com on port 993 and return whether it was successful or
> not. The advantage of doing this is that we don't need to rely on any
> external program to perform such a simple test.
>

One thing of interest to note but which may not affect what the OP is doing....

If the port being tested is listed as "filtered" by nmap

[egreshko at meimei ~]$ nmap -Pn -p143 imap.gmail.com

Starting Nmap 6.01 ( http://nmap.org ) at 2013-02-13 21:53 CST
Nmap scan report for imap.gmail.com (173.194.64.108)
Host is up.
Other addresses for imap.gmail.com (not scanned): 173.194.64.109
rDNS record for 173.194.64.108: oa-in-f108.1e100.net
PORT    STATE    SERVICE
143/tcp filtered imap

the command

2>/dev/null >/dev/tcp/imap.gmail.com/143 && echo "yes"

will hang for quite some time....


-- 
Don't be bullied by the judgmental grammar and spelling police.


More information about the users mailing list