由于1.44M的标准的需要`寻找一个极小的EDIT.COM
目前仅有两个版本的`大小是71K和69K
希望能有更小的```
请师兄们帮帮忙`!!先谢过了``!
目前仅有两个版本的`大小是71K和69K
希望能有更小的```
请师兄们帮帮忙`!!先谢过了``!
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
Originally posted by xugaohui at 2006-2-19 01:17 PM:
第一个ms edit实在太好了。与原版ms edit完全一样,但文件要小的多,一直没办法压缩win 2003中的edit.com,却在这里找到了比小的文件。只有ms的 edit才可以同 ...
Originally posted by Wengier at 2007-3-21 03:44 PM:
说得不错,所以MS EDIT一直是我在DOS和“命令提示符”下最常用的编辑器。
@echo off
setlocal enabledelayedexpansion
echo.
echo 文本编辑
echo Coded by neko, 2010. All rights reserved.
::临时文件设定
set tempfile=%temp%\edit.tmp
::控制入口设定
set ctrcmd=!control
::文件名设定
if not "%1"=="" (set filename=%1
goto EDITOLD)
goto CONTROL
:CONTROL
echo.
:CONTCYCLE
set /p ecmd=">"
for /f "tokens=1" %%i in ("%ecmd%") do set ecmdf=%%i
for /f "tokens=2" %%i in ("%ecmd%") do set ecmd1=%%i
::文件操作
if "%ecmdf%"=="new" (
set filename=新建文本文档.txt
echo.
goto CREATENEW
)
if "%ecmdf%"=="open" (
set filename=!ecmd1!
goto EDITOLD
)
if "%ecmdf%"=="save" (
if exist "!filename!.bak" del "!filename!.bak" /f
if exist "!filename!" move "!filename!" "!filename!.bak"
copy "%tempfile%" "!filename!"
goto EDITOLD
)
if "%ecmdf%"=="saveas" (
set filename=!ecmd1!
if exist "!filename!.bak" del "!filename!.bak" /f
if exist "!filename!" move "!filename!" "!filename!.bak"
copy "%tempfile%" "!filename!"
goto EDITOLD
)
if "%ecmdf%"=="back" (
if "%editstate%"=="CREATE_NEW" set /a line=!line!-1
echo.
goto EDITPARA
)
if "%ecmdf%"=="exit" (
if exist "%tempfile%" del "%tempfile%" /f
goto EOF
)
if "%ecmdf%"=="help" goto HELP
::行操作
if "%ecmdf%"=="insert" goto INSERT
if "%ecmdf%"=="line.insert" goto LINSERT
if "%ecmdf%"=="line.delete" goto LDELETE
if "%ecmdf%"=="line.edit" goto LEDIT
echo '%ecmdf%' 不是有效指令,请键入 help 查询控制命令。
echo.
goto CONTCYCLE
:NOPEN
echo 未打开任何可编辑的文件。
goto CONTROL
:NOLINE
echo 指定行数不存在。
goto CONTROL
:HELP
echo.
echo 新建 new
echo 打开 open
echo 保存 save
echo 另存为 saveas
echo 返回 back
echo 退出 exit
echo 帮助 help
echo.
echo 插入段 insert
echo 插入行 line.insert
echo 删除行 line.delete
echo 编辑行 line.edit
goto CONTROL
:INSERT
if "!filename!"=="" goto NOPEN
if !ecmd1! LEQ 0 goto NOLINE
set /a line=!line!+1
if !ecmd1! GTR !line! goto NOLINE
echo.
if exist "%tempfile%.1" del "%tempfile%.1" /f
set /a line=0
for /f "tokens=*" %%i in (%tempfile%) do (set /a line=!line!+1
if !line! LSS !ecmd1! echo %%i>>"%tempfile%.1"
)
set /a line=!ecmd1!-1
:INSPARA
set /a line=!line!+1
set /p cLine="%line%: "
if not "%cLine%"=="%ctrcmd%" (
echo ^%cLine%>>"%tempfile%.1"
goto INSPARA)
set /a line=0
for /f "tokens=*" %%i in (%tempfile%) do (set /a line=!line!+1
if !line! GEQ !ecmd1! echo %%i>>"%tempfile%.1"
)
if exist "%tempfile%" del "%tempfile%" /f
move "%tempfile%.1" "%tempfile%"
goto EDITCUR
:LINSERT
if "!filename!"=="" goto NOPEN
if !ecmd1! LEQ 0 goto NOLINE
if !ecmd1! GTR !line! goto NOLINE
echo.
set /p cLine="!ecmd1!: "
if exist "%tempfile%.1" del "%tempfile%.1" /f
set /a line=0
for /f "tokens=*" %%i in (%tempfile%) do (set /a line=!line!+1
if !line! LSS !ecmd1! echo %%i>>"%tempfile%.1"
if !line! EQU !ecmd1! echo ^%cLine%>>"%tempfile%.1"
)
set /a ecmd1=!ecmd1!-1
for /f "skip=%ecmd1% tokens=*" %%i in (%tempfile%) do echo %%i>>"%tempfile%.1"
if exist "%tempfile%" del "%tempfile%" /f
move "%tempfile%.1" "%tempfile%"
goto EDITCUR
:LDELETE
if "!filename!"=="" goto NOPEN
if !ecmd1! LEQ 0 goto NOLINE
if !ecmd1! GTR !line! goto NOLINE
echo.
if exist "%tempfile%.1" del "%tempfile%.1" /f
set /a line=0
for /f "tokens=*" %%i in (%tempfile%) do (set /a line=!line!+1
if !line! LSS !ecmd1! echo %%i>>"%tempfile%.1"
if !line! GTR !ecmd1! echo %%i>>"%tempfile%.1"
)
if exist "%tempfile%" del "%tempfile%" /f
move "%tempfile%.1" "%tempfile%"
goto EDITCUR
:LEDIT
if "!filename!"=="" goto NOPEN
if !ecmd1! LEQ 0 goto NOLINE
if !ecmd1! GTR !line! goto NOLINE
echo.
if exist "%tempfile%.1" del "%tempfile%.1" /f
set /a line=0
for /f "tokens=*" %%i in (%tempfile%) do (set /a line=!line!+1
if !line! EQU !ecmd1! echo !ecmd1!: %%i
)
set /p cLine="!ecmd1!: "
set /a line=0
for /f "tokens=*" %%i in (%tempfile%) do (set /a line=!line!+1
if !line! LSS !ecmd1! echo %%i>>"%tempfile%.1"
if !line! EQU !ecmd1! echo ^%cLine%>>"%tempfile%.1"
if !line! GTR !ecmd1! echo %%i>>"%tempfile%.1"
)
if exist "%tempfile%" del "%tempfile%" /f
move "%tempfile%.1" "%tempfile%"
goto EDITCUR
:CREATENEW
echo.
echo 创建文本 - !filename!
echo.
set /a line=0
if exist "%tempfile%" del "%tempfile%" /f
set editstate=CREATE_NEW
:CRTPARA
set /a line=!line!+1
set /p cLine="%line%: "
if "%cLine%"=="%ctrcmd%" goto CONTROL
echo ^%cLine%>>"%tempfile%"
goto CRTPARA
:EDITOLD
if not exist "!filename!" (
echo 文件 '!filename!' 不存在。
goto CONTROL
)
if exist "%tempfile%" del "%tempfile%" /f
for /f "tokens=*" %%i in (!filename!) do echo %%i>>"%tempfile%"
:EDITCUR
echo.
echo 编辑文本 - !filename!
echo.
set /a line=0
for /f "tokens=*" %%i in (%tempfile%) do (set /a line=!line!+1
echo !line!: %%i)
goto CONTROL
:EOF
if exist "%tempfile%" del "%tempfile%" /f
set tempfile=
set ctrcmd=
set filename=
set editstate=
set line=
set cLine=
set ecmd=
set ecmdf=
set ecmd1=