Tar*_*ire 55 file-transfer ms-dos
作为某种法律记录保存工作的一部分,我父亲的商业律师要求从工作计算机上获取客户数据库的副本。核心问题是这台工作计算机是大约 1988 年的 AOpen...东西,运行看起来是 DOS 5.0 的修改版本。
我对实际的 MS-DOS 和一般较旧的硬件非常薄弱,但经过一番摸索后,我终于找到了律师需要的文件。问题在于客户“数据库”(读取:空格分隔的文本文件)大约为 3MB。这对于一张软盘来说太大了,而且数据都在一个文件中,就我对实际 DOS 的非常有限的了解,这将使我无法将它与计算机上的内置程序分开。
检查电脑背面,我注意到1个内置串口,一个扩展槽中的并口,还有一个有点莫名其妙的网卡,里面的插孔太大了,不能是RJ-11。我没有测试它是否真的是 RJ-45,因为当时我手边没有以太网电缆。但是,我本会使用(根据我的研究)来使用串行的两个程序文件在计算机上找不到。此外,我完全不知道我会做什么来利用 NIC。
此外,更复杂的问题是,仅拔出 HDD 必须降级为最后的手段,因为计算机(比我年龄大)用于日常业务操作,并且由于两者之间的距离必须离线约 1 天计算机和我,“客户”并不特别想要。
所以我的问题的关键是,我在 DOS 中几乎没有任何技能(我不小心损坏了一个“数据库”,如果我没有事先备份,情况会很糟糕),有没有一种简单的方法我可以利用上述资产(或其他我不知道的关于 DOS 的东西)在不拔硬盘的情况下从计算机上获取这个 3 meg 文件?
Tom*_*m A 53
尝试使用 PKZip。这是一个旧的 DOS 实用程序,提供了一些最早的 zip 文件功能。您应该可以在http://wiki.oldos.org/Downloads/MSDOS下载它。如果数据库是一个文本文件,那么 PKZip 应该可以让您压缩到足以进入软盘的程度,否则,它应该允许跨越多个磁盘。那时,您的主要问题是从软盘转移到更现代的计算机上。我不记得 PKZip 的语法,但我记得它确实有很好的内置帮助,可以准确地向您展示如何压缩和解压缩文件。我从下载中推荐 2.04g 版本,因为它多年来被普遍认为是最好的版本。
Ilm*_*nen 17
电脑是否安装了QBasic?如果是这样,您可以在其中编写一个简单的文件拆分器,如下所示:
OPEN "database.dat" FOR BINARY AS #1
LET disk% = 1
LET todo& = LOF(1)
DO UNTIL todo& <= 0
PRINT "Insert disk"; disk%; "into drive A: and press enter.";
LINE INPUT ""; foo$
LET file$ = "A:\chunk" + LTRIM$(RTRIM$(STR$(disk%))) + ".dat"
OPEN file$ FOR BINARY AS #2
LET done& = 0
DO UNTIL done& >= 1300000 OR todo& <= 0
LET buf$ = SPACE$(4096)
IF todo& < LEN(buf$) THEN LET buf$ = SPACE$(todo&)
GET #1, , buf$
PUT #2, , buf$
LET done& = done& + LEN(buf$)
LET todo& = todo& - LEN(buf$)
LOOP
CLOSE #2
LET disk% = disk% + 1
BEEP
LOOP
CLOSE #1
Run Code Online (Sandbox Code Playgroud)
这会将您的数据库分成 1.3 MB 的块,即使考虑到 FAT 开销,它也应该可以轻松地放在 1.44 MB 的软盘上。
编辑:这是一个使用二进制 I/O 的更新版本,它运行得更快,没有 Ctrl-Z 字符问题,并且可以正确处理大小不是缓冲区大小倍数的输入文件。我已经在 DOSBox 下对其进行了测试,它正确地将 3 MB 的随机字节文件拆分为多个块。
War*_* P 10
正如其他人所说,它只有 3 兆,因此使用具有跨度的 PKZIP 将是最简单的解决方案。然而
如果您遇到这样的问题并且软盘驱动器不工作,使用串行端口会很容易。
要使用串行端口,您需要一个 DOS 终端程序,然后运行它,然后使用 ZMODEM 之类的协议,以 115kbps 传输文件,以 115200 kbps 传输文件需要不到 5 分钟。
在您的笔记本电脑或任何其他现代 PC 上,您需要一个 USB 转串口适配器、一条空调制解调器电缆以及一个支持相同文件传输协议的终端程序。在大多数体面的电脑商店,这些电缆每根应该让您花费大约 5 美元。
我用过的最好的 MS-DOS 终端程序叫做 Telix 3.12 版。
小智 8
PKZIP 确实支持跨多个软盘,联想有一个名为 CHOPPER 的 DOS 兼容应用程序也可以实现这一点。
http://support.lenovo.com/en_US/research/hints-or-tips/detail.page?LegacyDocID=DSHY-44QSCB
用于磁盘跨越的 pkzip 开关(来自文档):
-&[f|l|u Span disks [Format|format Low density|Unconditional format|
ul|w|v] Unconditional Low density|Wipe disk|enable dos Verify|
[s[drive]] Back up entire disk w/ subdirs (-rp) [drive to back up]]