从帮助来看,命令大概可以分成几类
set命令:
设置环境,是常用命令
比如要对文件中某个快进行操作,就必须先使用set来选择文件和块
SET DBA [ dba | file#, block# ]
SET FILENAME 'filename'
SET FILE file#
SET BLOCK [+/-]block#
SET OFFSET [ [+/-]byte offset | symbol | *symbol ]
SET BLOCKSIZE bytes
SET LIST[FILE] 'filename'
SET WIDTH character_count
SET COUNT bytes_to_display
SET IBASE [ HEX | OCT | DEC ]
SET OBASE [ HEX | OCT | DEC ]
SET MODE [ BROWSE | EDIT ]
SET SPOOL [ Y | N ]
show命令:
查看环境命令
可以单独查看能够set的任何一个参数
同样也可以直接使用show,相当于show all查看当前所有参数的设置
SHOW [
info命令:
其实就是列出listfile中相同的内容
直接使用,没有其他参数
dump命令:
列出指定block的内容
可以通过地址或者文件名、文件id来选择
同时还可以指定要dump的块id,偏移量以及dump的总量
DUMP[/v] [ DBA | FILENAME | FILE | BLOCK | OFFSET | COUNT ]
find命令:
在指定的block中查找指定的字符串
返回结果会显示查找出的结果以及偏移量
其中偏移量就是数据再block中的字节数
查找内容可以指定查找的方式,如是16进制还是直接查找字符
参数/x为16进制,参数/c为直接查找字符
另外还可以指定是从头查找还是在当前块中查找
FIND[/x|d|u|o|c] numeric/character string [ TOP | CURR ]
modify命令
修改指定block的指定偏移量的值
简单说就是改数据
和查找一样,可以按照十六进制改,也可以按照字符串改
改的时候修改块的地址写在后面
MODIFY[/x|d|u|o|c] numeric/character string
[ DBA | FILE | FILENAME | BLOCK | OFFSET | symbol | *symbol ]
copy命令
把一个block的内容复制到另一个block中
COPY [ DBA | FILE | FILENAME | BLOCK ] TO [ DBA | FILE | FILENAME | BLOCK ]
verify命令
检查是否有坏块
可以指定特定块,不指定为当前块
VERIFY [ DBA | FILE | FILENAME | BLOCK ]
sum命令
计算block的checksum值
modify之后的block被标记为坏块
current checksum与reqired checksum不一致
sum命令可以计算出新的checksum值并应用到当前块
SUM [ DBA | FILE | FILENAME | BLOCK ] [ APPLY ]
undo命令
撤销,相当于sqlplus里的rollback
UNDO
revert命令
撤销之前的修改
相当于undo all
也可以指定操作的块
VERIFY [ DBA | FILE | FILENAME | BLOCK ]
print命令
打印数据结构
可以指定特定的数据块
PRINT[/x|d|u|o|c] [ DBA | FILE | FILENAME | BLOCK | OFFSET | symbol | *symbol ]
map命令
显示当前块的map
可以使用/v参数
MAP[/v] [ DBA | FILENAME | FILE | BLOCK ]