jxta shell 一些命令

通过shell命令寻求帮助

Man命令是JXTA shell最主要的帮助系统,man命令的使用方法是:

JXTA> man <commandName>

例如,输入命令:

JXTA> man Shell

显示Shell有关的帮助内容。

发现其他对等点

Peers命令是用于发现其他对等节点的。在没有输入选项的情况下,peers命令只显示先前发现的对等体列表,并没有执行远程发现。

在第一次运行peers命令时,将显示本地对等点和先前注册的集合点对等体:

JXTA> peers

peer0: name = JXTA.CRG 123:9701/9700

peer1: name =airclh

想要发现其他节点,远程发现必须通过选项-r执行。命令是异步运行的,其会马上返回一个提示” peer discovery message sent”,而不是等待完成对等点发现。Peers命令能够被重复执行多次以列出新发现的对等体。根据网络内在结构不同,对等体发现可以是即时的,也可能会花费几分钟时间。Peers命令还有其他选项:

-p peerid

发现位于给定位置的对等体。

-r

使用远程传播发现对等体。

-l

16进制字符串的形式显示对等体ID

-a

指定一个属性名来限制发现仅针对具有给定属性名的那些对等体

-v

指定一个属性值来限制发现只针对这样的对等体

-n

将单个对等体所返回响应的数量限制为n

-f

刷新对等体通告的本地缓存

发现其他对等体组

groups命令用于发现对等体组。在没有输入选项的情况下,groups命令只显示先前发现的,保存在本地的对等体组,不会执行远程发现。

远程发现其他对等体组的操作必须通过-r选项。命令是异步的运行方式,它立刻返回一句话“group discovery message sent”,而不会等待发现新的对等组。

JXTA> groups -r

group discovery message sent

JXTA>

就像peers命令一样,groups命令能够执行若干次,以列出所有新发现的对等体组。

JXTA> groups

group0: name = NetPeerGroup

group1: name = kaja

group2: name = dailupGrp

group3: name = frog101

group4: name = stevesgroup

group5: name = ice

group6: name = steve

group7: name = raelity

JXTA>

Peers命令还有其他选项:

-p peerid

在给定对等体位置发现组。

-r

通过传播发现组。

-l

16进制字符串的形式显示所有已知组的ID

-a

指定一个属性名来限制发现。对等组必须包含一个已给名称的属性。

-v

指定一个属性值来限制发现。对等组必须包括一个已给值的属性。此选项与-a选项联合使用。

-n

将单个对等体的响应数量限制为n

-f

从本地缓存中清除所有组的通告

加入或是创建一个组

Join命令用于加入一个对等体组。在没有选项的情况下,join命令列出对等体已经加入的对等组。一个对等体可以加入任意多的对等组。

要想加入对等组,对等体必须先发现对等组。使用groups命令显示已发现的对等组。在上面groups命令的例子中,group4是一个Shell环境变量,它包含了关于stevesgroup组的相关信息。输入命令join,并在后加-d选项,该选项标明在环境变量group4中包含的关于已发现对等组的信息。

JXTA>join -d group4

clh – Enter the identity you want to use for group

‘stevesgroup’

Identity : clh

JXTA>

当加入一个对等组时,对等组成员服务将要求对等体通过有效的身份验证自己。身份名实际上就是一个对等体登陆对等组的用户名。

Join命令的其他选项包括:

-r

对等体将充当该组的汇聚对等体

-c credential

指定加入对等组时所用的证书

-d adv

加入给定对等组通告所表示的对等组

name

加入给定名称的对等组

创建一个对等组的jxta shell命令如下:

JXTA>importfile -f groupadv groupadv

JXTA>mygroupadv = mkadv -g groupadv

JXTA>mygroup = mkpgrp -d mygroupadv

注意,由于mkadv命令是根据存储在shell环境变量中的一个文档来创建一个对等组或管道通告,因此必须先使用importfile命令将外部文件groupadv导入到存储在环境变量中的一个结构化文档对象groupadv中。这里我提供一个对等组通告的例子:

<?xml version="1.0"?>

<!DOCTYPE jxta:PGA>

<jxta:PGA xmlns:jxta="http://jxta.org">

<GID>

urn:jxta:uuid-AAA122616461AAAAAAA124615032503302

</GID>

<MSID>

urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE000000010306

</MSID>

<Name>

JPDA_ROOT_GROUP

</Name>

<Desc>

Root application group

</Desc>

</jxta:PGA>

mkadv命令的-g选项指定创建一个对等组通告,-p选项指定创建一个管道通告。

mkpgrp命令用于使用提供的对等组通告创建一个新的对等组。

此时使用groups命令显示缓存中对等组信息:

JXTA>groups

group0: name = NetPeerGroup

group1: name = groupadv

使用join命令加入新创建的对等组:

JXTA>join -d group1

Enter the identity you want to use when joining this peergroup (nobody)

1Identity : clh

再使用whoami命令显示节点所在对等组信息:

JXTA>whoami -g

<PeerGroup>groupadv</PeerGroup>

<Keywords>dreamsta-lzcd74</Keywords>

<PeerGroupId>jxta://CCD7CD9A56CD432A8DCEB28F79700CB7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000201</PeerGroupId>

<Service>jxta.service.resolver</Service>

<Service>jxta.service.membership</Service>

<Service>jxta.service.rendezvous</Service>

<Service>jxta.service.discovery</Service>

<Service>jxta.service.pipe</Service>

<Service>jxta.service.peerinfo</Service>

JXTA>

与其他对等节点通信

talk命令实现了一个简单的即时消息命令,使两个远程对等体上的两个用户能够更换消息。消息显示在shellstdout上。

要想使用talk命令,用户必须注册、登陆再发送消息。操作步骤如下所示:

1、通过talk -register <username>命令注册。这个命令为该用户创建了一个talk通告。此步骤只能在用户用talk命令第一次进行注册时完成。像所有的通告一样,此talk通告也将缓存,以便重启后仍然能够保持。

选项secure可以建立一个安全的talk

选项propagate可建立一个聊天室风格的talk

2、登陆命令是talk -login <username>。该命令使用户登陆到talk服务并启动一个后台监听程序。登陆命令在每次对等体重起时都要执行。

3、通过talk -u <myusername> <destusername>命令,用户就可以与另一用户对话。这个命令将提示用户输入想要发送的消息:

JXTA>talk -u moi mike

talk is connected to user mike

Type your message. To exit, type '.' at begining of line

想要停止接收talk消息,用户可以通过输入talk -logout <username>命令来停止talk后台监听程序。

你可能感兴趣的:(F#)