功能: 从屏幕读取用户指定的文件,逐行显示文件内容,并允许用户修改。修改后的文件保存为同名文件的新版本
要点:
1. 循环结构的实现
2. IF ... THEN... ENDIF结构
3. 用READ, WRITE实现对文件的操作
4. READ/END_OF_FILE=END_LOOP INFILE RECORD
当读到文件末尾时转到END_LOOP所标记的脚本块中
5. $ WRITE SYS$OUTPUT "FILE ''FILENAME' DOES NOT EXIST!"
在双引号里调用symbol时,注意symbol前面要有两个单引号 ''FILENAME'
[@more@]$!提示用户输入文件名,并判断文件在当前目录下是否存在
$ GET_NAME:
$ INQUIRE FILENAME "FILE NAME"
$ IF F$SEARCH(FILENAME) .EQS. ""
$ THEN
$ WRITE SYS$OUTPUT "FILE ''FILENAME' DOES NOT EXIST!"
$ GOTO GET_NAME
$ ENDIF
$!
$ OPEN/READ INFILE 'FILENAME'
$ OPEN/WRITE OUTFILE 'FILENAME'
$!
$ BEGIN_LOOP:
$ READ/END_OF_FILE=END_LOOP INFILE RECORD
$ WRITE SYS$OUTPUT RECORD
$ INQUIRE/NOPUNCTUATION OK "Change? Y or N [Y]"
$ IF OK .EQS. "N" THEN GOTO WRITE_RECORD
$ INQUIRE RECORD "New Record"
$!
$ WRITE_RECORD:
$ WRITE OUTFILE RECORD
$ GOTO BEGIN_LOOP
$!
$ END_LOOP:
$ CLOSE INFILE
$ CLOSE OUTFILE
$ EXIT
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/207/viewspace-812377/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/207/viewspace-812377/