文档库 最新最全的文档下载
当前位置:文档库 › As400常用命令

As400常用命令

书目:
要做管理就WORK MANAGEMENT和SYSTEM OPERATION、BACKUP AND RECOVERY。
开发就看RPG/400 REFERENCE ,ILE RPG REFERENCE,CL REFERENCE,CL PROGRAMMING等等



第一步:第一次登录AS400
1.AS400的操作
2.更改密码change password
3.查看系统报表wrksplf
4.查看信息dspmsg
5.发送信息sndmsg
6.查看系统使用情况wrksyssts
7.查看系统变量wrksysval
8.查看当前用户JOB情况wrkusrjob
9.查看用户属性wrkusrprf
10.创建一个用户crtusrprf
11.查看当前所有用户情况wrkusrjob
wrkusrjob user(*all) status(*active) jobtype(*interact) astlvl(*basic)
12.查看关机开机情况go power
13.提交批处理sbmjob
14.查看当前用户所提交的处理wrksbmjob
15.查看所有的批处理工作wrkjobscde
16.查看当前机器的硬件信息dsphdwrsc
17.更改信息的方式chgmsgq *break
18.查看系统磁盘工作go disktasks
strsst
19.保存savobj
20.恢复rstobj
library file member
21.这三者同PC中的差别
22.目录的意义library list
23.用户使用的库EDTLIBL
24.查看当前活动的工作情况wrkactjob


--------------------------------

1、PRTDEVADR :PRINT A LIST OF DEVICES ATTACHED TO THE AS/400
2、To create a report for all devices (with ports, addresses, and types) for all workstation
controllers on the AS/400:
1. At a command line, type GO DEVICESTS and press Enter.
3、 WRKCFGSTS *DEV xx (xx=device ID) 显示device
WRKCFGSTS *DEV W* 以W开头的device
4、WRKDEVD:Another command that can be used to locate or display devices is WRKDEVD

5、WRKSPLF:WORK WITH SPOOL FILES (WRKSPLF) 查看系统报表
6、DSPSYSVAL:DISPLAY SYSTEM VALUES
7、WRKSYSVAL:command can also be used to display system value(s).
8、 WRKUSRPRF :To display all User Profiles, at a command line, type WRKUSRPRF *ALL and
press Enter.
9、DSPLIBL: (Display Library List).


10、?IBM (system) Libraries
These contain operating system software and information required to operate the AS/400. IBM Libraries
are prefixed with Q.

QSYS System Library - Contains all operating system software and user profiles
QHLPSYS Help Text Library - Contains help text data used when you press Help key [F1 key is the Help key for a PC keyboard]
QUSRSYS Security Library - Contains message and output queues
QGPL General Purpose Library - Contains miscellaneous information and IBM programs

11、?DEALERLINE XL (user) Libraries
These are application libraries purchased by a retail facility that allow them to complete each task listed.
The following is a list of several DEALERLINE libraries.

DBLIBR Data Base Library - All data files that make each computer system unique to the
dealership or retail facility. This is the l

ibrary saved during the nightly backup.
BLLIBR BUSINESSLINE XL Library
DCLIBR GM DCS400 Library
LELIBR Leasing Library
MPLIBR GMAC MAPS
PALIBR Payroll Library
PFLIBR Temporary Fixes Library - Contains program updates until they are permanently
placed in programs with a new release
PRLIBR PARTSLINE XL Library
RALIBR RAPID400 Library
SALIBR System Administration Library - Used with programs to complete DEALERLINE
XL security and backups
SLLIBR SALESLINE XL Library
SMLIBR SERVICELINE XL V1 Merchandising Library
SVLIBR SERVICLEINE XL V2 Library
SSLIBR SERVICELINE XL Scheduling Library

12、SUBSYSTEMS

A subsystem is an independent environment with its own allocated resources where work is performed.

Examples of AS/400 subsystems:

DLCOMMSBS - where communication polling jobs are processed.
EZFORMS - area in computer that EZFORMS monitors are processed.
PRINTSBS - where all parts and service print jobs are processed
QBATCH - area to process jobs in background and allow the terminal to be
used for other functions while the processing occurs
QCMN - where communication jobs are processed
QCTL - location where system console functions
QINTER - where all interactive jobs, except the system console, process
QSPL - area in computer that processes print jobs

13、WRKWTR: and press Enter to display all printers:
STRRMTWTR xx (xx=Printer ID) or STRRMTWTR *ALL can be used to start a TCP/IP printer.

14:WRKOUTQ: and press Enter to work with all output queues
15、 SNDMSG : (SEND MESSAGE) and press F4.
16、 SNDBRKMSG : (SEND BREAK MESSAGE) and press F4
17、WRKACTJOB:To display all the subsystems and jobs running on the AS/400
18、WRKSBSJOB:To display all jobs currently processing or waiting to process in the system console subsystem
19、 WRKSBSJOB QBATCH :Work with Batch Subsystem
20、WRKSBMJOB:This is an alternative (to the previous command) to display jobs in the batch subsystem.
21、WRKJOBQ:To display all job queues defined on your system and their status:
22、As400 Security User control:
Commands to Manipulate IBM User Profiles

CRTUSRPRF Create user profile
DSPUSRPRF Display user profile
DLTUSRPRF Delete user profile
WRKUSRPRF Work with user profile
CHGUSRPRF Change user profile
RSTUSRPRF Restore user profile
CHGPWD Change user password


----------------------

1、Creating the DDS file:
File Type Command
Physical file CRTPF
Logical file CRTLF
Display file CRTDSPF
Printer file CRTPRTF
ICF file CRTICFF

2、 strpdm:编辑dds
3、删除一个表:dltf run08001/customer2
4、ctrpf基本格式:
crtpf file(appdta/customer)
srcfile(appsrc/qddsrc)
mbr(*none)
mbr为添加文件成员的名字
5、重命名:rnmobj obj(appdta/customer)
objtype(*file)
newobj(customerx)

6、复制:
cpyf fromfile(appdta/customerx)
tofile(appdta/customer)
frommbr(*all)
tombr(*frommbr)
mbropt(*add)
fmtopt(*map *drop)
7、创建逻辑文件:
ctrlf file(appdta/custname)
srcfile(appsrc/qddssrc)

crtlf file(nongfeilib/customerr) srcfile(nongfeisrc/nfddssrc)

8、修改源文件属性(可写中文),如下:Additional Parameters
Coded character set ID . . . . . 935 *SAME, *HEX...

9、crtjobd:建立job description
10、 WRKJOBD JOBD(nongfeilib/nfjobd)
11、go cmd+xxxxx表示查询命令
12、技巧:
利用wrkobj查找命令:WRKOBJ OBJ(*ALL) OBJTYPE(*MENU) 或
Object . . . . . . . . . . . . . *all Name, generic*, *ALL
Library . . . . . . . . . . . *LIBL Name, *LIBL, *CURLIB...
Object type . . . . . . . . . . *menu *ALL, *ALRTBL, *AUTL...

意义:分类查找命令

13、 多格式逻辑文件dds示例:
R CUSTL01 PFILE(CUSTOMER)
CUSTID
NAME
K CUSTID
R EMPL01 PFILE(EMPLOYEE)
EMPID
NAME
K EMPID
14、连接逻辑文件dds示例:
SEU==> NFL01
FMT LF https://www.wendangku.net/doc/1111075758.html,++++++.Len++TDpB......Functions++++++++++++++++++
*************** Beginning of data *************************************
0001.00 R CUSTL01 JFILE( EMPLOYEE CUSTOMER )
0002.00 TEXT(' 连接逻辑文件 ')
0003.00 J JOIN( EMPLOYEE CUSTOMER )
0004.00 JFLD( CUSTID CUSTID )
0005.00 CUSTID JREF( EMPLOYEE )
0006.00 EMPID
0007.00 EMPNAME
0008.00 CUSTNAME JREF( CUSTOMER )
0009.00 K CUSTID
****************** End of data ****************************************

15、first rpgle程序:
FMT C CL0N01Factor1+++++++Opcode&ExtFactor2+++++++Result++++++++Len++D+HiLoEq
*************** Beginning of data **********************************

***
0001.00 c 'hello world' dsply
0002.00 c return
****************** End of data ****************************************
16、修改第一条数据的rpgle程序
SEU==> DBRPGLE
FMT FX FFilename++IPEASF.....L.....A.Device+.Keywords+++++++++++++++++++++++++
*************** Beginning of data *************************************
0001.00 fcustomer uf e disk
0002.00 c read customerr
0003.00 c eval custname='111'
0004.00 c update customerr
0005.00 c seton lr
0006.00 c return
****************** End of data ****************************************
“seton lr”意思是强制将内存中的数据写到磁盘中。 (基于效率因素,系统在修改文件时,会先将修改
的结果先放在内存中,在同一程序中,读取数据也是先从内存中查询。 )LR,取自是 Last
Record
RETURN,表示程序结束,在后面“操作码”一节中,会有讲述。
如果不太明白,就记住

17、物理文件src示例:
FMT PF https://www.wendangku.net/doc/1111075758.html,++++++RLen++TDpB......Functions++++++++++++++++++
*************** Beginning of data *************************************
0001.00 UNIQUE
0002.00 R CUSTOMERR
0003.00 CUSTID 10A TEXT(' 客户 ID')
0004.00 COLHDG(' 客户 ID')
0005.00 CUSTNAME 30O TEXT(' 姓名 ')
0006.00 COLHDG(' 姓名 ')
0007.00 K CUSTID
****************** End of data ****************************************
18、逻辑文件src示例:
SEU==> CUSTOMERR
FMT LF https://www.wendangku.net/doc/1111075758.html,++++++.Len++TDpB......Functions++++++++++++++++++
*************** Beginning of data *************************************
0001.00 R CUSTOMERR PFILE(CUSTOMER)
0002.00 CUSTID
0003.00 CUSTNAME
0004.00 K CUSTID
****************** End of dat

a ****************************************

19、 从这个程序中,我们可以看到,RPGLE 的程序,大致上可以分为两个部分:
(1) 声明、定义部分:声明程序中使用到的文件(F行) ,定义程序中使用的变量(D行)
(2) 程序运行部分 :即 C 行,也就是程序段。

20、在 RPGLE 程序中,F行必须在 D行前面,D行必须在 C 行前面。
21、程序中的 F 行、D 行都不是必须项,一个程序可以没有 F 行(如仅完成计算功能的公
函数,比如计算利息) ,也可以没有 D行(没有需要特别定义的变量,或者所有变量都在
行进行定义) ,但不应该没有 C 行,因为 F行与 D行都属于非执行行,是起定义作用;C
是执行行。没有 C 行的程序,是无执行意义的。

22、常见的程序流程
FPFFHS UF E DISK //声明文件 PFFHS
D LSFLD01 S 2 //定义临时变量 LSFLD01
C EVAL LSFLD01=’01’ //给变量 LSFLD01 赋值
C EXSR SUB#UPD //执行子过程SUB#UPD
C EVAL LSFLD02=’02’ //给变量 LSFLD02 赋值
C EXSR SUB#UPD //执行子过程SUB#UPD
C SETON LR //数据写入磁盘
C RETURN //程序结束
C SUB#UPD BEGSR //子过程 SUB#UPD 开始
C READ FMTFHS //读 PFFHS 文件
C EVAL FLD01=LSFLD01 //给字段 FLD01 赋值
C UPDATE FMTFHS //修改文件
C ENDSR //子过程结束

“//”后面的,只是简单的解释,如果自已动手写,不需要输入这些内容。

23、F行说明:
Filename:需要声明的文件名,必须顶格,文件名必须唯一,也就是程序中对同样的文件名不能声明两次。
File Type:
声明文件的处理类型。必须填写。允许的选项有:
I:输入型,即只读文件,对声明的文件只取其记录的值,不对记录进行修改
U:修改型,即对声明的文件进行修改操作(删除记录属于修改操作的一种)
O:输出型,即只写,对声明的文件只进行写操作。
C:混合型,用于对屏幕文件的定义。 (混合型,即输入/输出型,以屏幕文件为例,也
就是读取屏幕文件的一些输入字段信息,同时也可以输出一些字段的值到屏幕文件中,但不
能对屏幕文件自身进行修改,所以与上面的 U是有区别的)

File Designation:
文件的指定方式,允许的选项有:
不填:表示这是一个输出文件,即“File Type”项为“O”时,此项不填
P:表明声明的文件是主文件,这个很少用,cycle 相关
S:表明声明的文件是次文件,这个没用过,cycle 相关
R:Record address file,记录地址文件?没用过
T:数组或表文件?不懂,没用过
F:常用,具体含义不知道该如何翻译(Full proce

dural file)
简单来说,不考虑 cycle(循环控制),这样理解就够了:
当“File Type”为 I,U,C 时,这里填“F”
当“File Type ”为 O时,这里不填写

End of File:程序结束前,对记录的处理方式。可以不填,或填“E” 。
File Addtion:
是否会增加文件中的记录,即是否会对文件进行写操作。
可以不填,或填“A”
当 File Type为“O”时,系统自动默认此项为“A” ,不必填写;
当 File Type为“I” ,或“U”时,这项内容可以填“A” ,也可以不填。不填,即表示不
会增加文件中的记录,也就是没有写操作;填“A”时,即表示会增加文件中的记录,也就
是会对文件进行写操作。

Sequence:针对 cycle 使用的,表示排序顺序。
当定义为非 cycle 文件时,即“File Designation”项非“P” 、 “S”时,此项必须为空;
当定义为 cycle 文件时,即“File Designation”项为“P” 、或“S”时,此项可填空、A、
D。A表示升序,D表示降序。
因为 CYCLE现在已不常用,所以通常不填。

File Format:文件格式,不能为空,允许的值有:
E:声明的文件,是外部描述的文件(即文件在程序运行之前就已存在?)
F:声明的文件,是一个程序描述文件?(不知道什么意思,没用过)
这里通常填“E” ,即为外部描述文件

Record Length:“File Format”为“F”时,才需要填写。没用过通常不填
Limit Processing :通常不填。
Length of Key Field :
查询时,索引键值的长度
如果“File Format”项等于“E” ,即外部描述文件时,此项不填
如果“File Format”项等于“F” ,便不需要按 KEY值查询时,此项也不填
如果“File Format”项等于“F” ,需要按 KEY 值查询时,此项填写 KEY 值的长度
(1—2000) 。
因为一般都使用外部描述文件,所以这里一般都不填写。

Record Address Type:记录寻址类型,好象是对文件键值的描述
File Organization :一般不填
Device:
声明文件的存放位置,必须填写,允许的值有:
DISK: 磁盘文件,即文件存储在磁盘上,最常见的;
PRINTER: 打印文件,提供打印输出描述,以及对打印设备访问。打印报表用这个;
WORKSTN: workstation,工作站,显示文件。屏幕文件(DSPF)的定义用这个值
(下面这两种我没用过的)
SEQ: 磁带文件,文件存储在磁带上。
SPECIAL: 特殊文件, 我现在也不是很清楚具体使用方式。 据 blogliou 说, 这种类型,
是允许指定一种不能被 RPG 直接操作的输入/输出设备。比如可以通过 SPECIAL 文件,在
RPGLE 程序中实现象读写磁盘一样,对 DTAQ进行程序间数据交换。

RENAME:对文件记录格式名进

行重命名。

24、常用例子:
对文件进行只读的声明:
FPFFHS IF E DISK
对文件进行修改的声明:
FPFFHS UF E DISK
对文件进行只写的声明:
FPFFHS O E DISK
对文件进行修改,以及增加记录的操作:
FPFFHS UF A E DISK
对文件进行查询,增加记录的操作,并对文件进行查询操作:
FPFFHSL1 IF A E K DISK
声明两个记录格式相同的文件,并对其中之一进行重命名
FPFFHSL1 IF E K DISK
FPFFHSL2 IF E K DISK RENAME(FMTFHS:FMTFHS2)
注:在声明时,两个文件不一定要上下紧接着;随便改哪一个文件对应的记录格式
都可以;新旧记录格式名用冒号隔开,新记录格式名可自行定义,无规则。
对文件的修改操作进行日志处理:
FPFFHSL2 UF E K DISK COMMIT
cycle 类文件的声明:
FPFFHSL2 IP E K DISK
这样文件声明为P之后, 程序中不需要写循环读文件, 也不需要写RETURN, 设指示器INLR,
也就是
FPFFHSL2 IP E K DISK
C READ 记录格式名
等价于
FPFFHSL2 IF E K DISK
C DOW 1 = 1
C READ 记录格式名 EQ指示器
C IF EQ指示器=’1’
C LEAVE
C ENDIF
C ENDDO
C RETURN

25、D 行说明 :
Name:
定义的变量的名字,该名字可以不顶格写。 (即允许有缩进)
E:
标识定义的变量是否源自外部数据结构。可以不填,或填“E”
所谓“引用一个外部文件作为数据结构” ,也就是说定义一个结构,整个结构中的变量,
参照外部文件来定义。
所谓结构,可以理解为一个“由多个变量组合而成的大变量” 。
举例而言:
D MYDS E DS EXTNAME(PFFHS)

D MYDS DS
D FHS01 1 2(1在 From项;2 在 To / length 项)
D FHS02 3 4
D FHS03 5 6

S/U: 一般都填空
Declaration Type:定义变量的类型
DS: 数据结构,即定义一个结构变量
C: 常量
常量只能使用字符,不需要定义常量的长度、类型。常量的内容写在
“Keywords”处,并使用 CONST 关键字,在程序段中,不能对常量进行赋值操作。
MYNUM C CONST('abcdefghijklmn')
就是定义一个叫做 MYNUM 的常量,这个常量包含字母 a--n。
S: 定义以下内容:独立变量、数组、表
定义一个叫 MYFIELD1 的变量,变量为 1 位长的字符型
D MYFIELD1 S 1 //1 在“To/length”项
定义一个叫 MYARRAY的数组,共含 3 条记录,每条记录为 1 位字符型
D MYARRAY S 1 DIM(3) //DIM

在“Keywords”项
表的定义没有用过
总之,这一项,最常用的,就是“DS” 、 “S”与空。即结构体与独立变量,其它选项较
少用到。

From:
当“Declaration Type”项为“S”时,表示独立变量、数组,此项不填
当“Declaration Type”项为“DS”时,表示结构,此项仍然不填
当“Declaration Type”项为空时,表示当前定义的变量,属于上面定义的结构,此时,
此项可以填写,也可以不填写。
当填写时, “From”项表示变量在结构中的起始位置,右对齐; “To/ length”表示变量在
结构中的结束位置,也是右对齐。
当不填写时, “To/length”表示直接定义为变量长度。
Length:
上面已讲述在定义结构时的使用方法。
在定义非结构时,此项的内容即为定义变量的长度

Internal Data Type:
定义变量的类型,允许的值有:
空:变量定义为字符型、压缩型数字
A: 变量定义为字符型
B: 二进制?不知道
D: 变量定义为日期型
F: 变量定义为浮点型?
G: 变量定义为图型?(非英文?汉字?)
I: 变量定义为带符号的整数
N: 变量定义为指示器变量?(没用过)
P: 变量定义为压缩型数字
S: 变量定义为普通的数型
T: 变量定义为时间型
U: 变量定义为无符号的整数
Z: 变量定义为日期+时间型(格式:年-月-日-时.分.秒.微秒)
*: 变量定义为指针型
其实我最常用,就是不填,因为一般的程序,有字符和数字这两种类型变量,就足够了。

Decimal Positions:
当变量定义为数字型时,用来标志小数的位数。
当“To/Length”项为 3, “Internal Data Type”项为空时
此项为空,表示定义的变量为 3 位长的字符型
D MYFLD01 S 3 //定义为3 位字符型
此项不为空(右对齐) ,表示定义的变量为数字型
D MYFLD01 S 3 2 //定义数字型变量,1 位整数,2 位
小数(总长为 3 位)

Keywords:关键字,可以不填,常用的值如下:
CONST: 定义常量的值
DIM: 定义数组
EXTNAME:引用外部文件作为数据结构变量
EXTFLD: 对引用了外部文件作为数据结构的某个变量,进行重命名
LIKE: 定义变量时,参照已存在的变量定义
OCCURS: 定义结构体变量时,指定的结构体变量的记录条数
INZ: 定义变量时,赋值初始值
DATFMT: 定义日期变量时,指定日期格式
*MDY (mm/dd/yy)
*DMY (dd/mm/yy)
*YMD (yy/mm/dd)
*JUL (yy/ddd)
*ISO (yyyy-mm-dd)
*USA (mm/dd/yyyy)
*EUR (dd.mm.yyyy)
*JIS (yyyy-mm-dd)
Comment
注释项,源自 RPG,不用填,因为填了也没用。

26、变量的定义,除了在 D行定义之外,还

可以在 C 行通过赋值语句直接定义
27、

相关文档