QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2453|回复: 11

u盘文件出错的问题

[复制链接]
发表于 2008-8-24 16:28:23 | 显示全部楼层 |阅读模式
最近,我在magic中可能因为没有安全删除U盘导致现在一个U盘的文件在读取时要很长时间。我就在windows中用磁盘扫描程序修复了一下,结果一个600多兆的文件变成了70多兆,估计少了的部分走到了另外一个原本是一个文件夹的文件去,这个原本的空的文件夹成了文件,有500多兆,和哪个变成70多兆的文件加起来,估计与原来600多兆的文件大小相等。请问现在怎样解决呢?一开始的时候,又怎样做才好呢?
发表于 2008-8-24 23:21:28 | 显示全部楼层
没遇到过,不过可以尝试用linux命令连接起来,至于能不能用就不知道了。
回复

使用道具 举报

发表于 2008-8-25 12:55:44 | 显示全部楼层
photorec 扫描一下

然后parted 处理
回复

使用道具 举报

 楼主| 发表于 2008-8-25 22:20:38 | 显示全部楼层
谢谢回答,我还有一些内容要补充。这个原本600多兆的文件是iso文件,当初出问题时,在linux中列出这个U盘中的内容(大约800兆)要约半分钟,在windows中却很块。我在windows中用磁盘扫描工具修复后,在linux中打开U盘是正常了,但成了现在似乎一个文件分成两部分的情况,这个iso文件也能正常打开,我用原文件和现在的文件对比,大致看了一下,打开后的iso文件里的文件和原文件一样。但现在怎样处理呢?haulm说的用linux命令连接怎样用呢?stdio说得我也不理解。photorec是什么?parted是分区程序吧?又怎么样?

[ 本帖最后由 软用者 于 2008-8-26 16:03 编辑 ]
回复

使用道具 举报

发表于 2008-8-26 12:23:32 | 显示全部楼层
photorec http://www.cgsecurity.org/wiki/PhotoRec

扫描并恢复数据

parted 把USB disk 处理掉,就是重新分区,格式化

iso 分成两部分还能用?

哈哈~

checksum 了吗?八成是不对的,里面的文件有些也不能用吧?

以前linux 下的usb 设备的确是个问题。
回复

使用道具 举报

发表于 2008-8-26 20:43:18 | 显示全部楼层
在 linux/unix 中可以使用 join 命令来连接两个文件。它会根据指定栏位,找到两个文件中指定栏位内容相同的行,将他们合并,并根据要求的格式输出内容。该命令对于比较两个文件的内容很有帮助。

语法 join [ -i ][ -a filenumber | -v filenumber ]  [  -1 fieldnumber  ]
[  -2 fieldnumber ]  [ -o list ]  [ -e string ]  [ -t char ]
     file1  file2主要参数

-i 或 --igore-case   比较栏位内容时,忽略大小写的差异。
-a <1或2>   除了显示原来的输出内容之外,还显示指令文件中没有相同栏位的行。
-v <1或2>   跟-a相同,但是只显示文件中没有相同栏位的行。
-1/-j1 <栏位>   连接[文件1]指定的栏位。栏位从 1 开始,默认为1。
-2/-j2 <栏位>   连接[文件2]指定的栏位。栏位从 1 开始,默认为1。
-j <栏位> 相当于 -1 <栏位> -2 <栏位>
-e <字符串>   若[文件1]与[文件2]中找不到指定的栏位,则在输出中填入选项中的字符串。
-o <格式>   按照指定的格式来显示结果。
-t <字符>   使用栏位的分隔字符。
--help   显示帮助。
--version   显示版本信息。实例
回复

使用道具 举报

发表于 2008-8-26 20:46:23 | 显示全部楼层
#  合并与分割(sort,uniq,join,cut,paste,split)

    (1)sot命令
        sort [options] files 许多不同的域按不同的列顺序排序
          -c 测试文件是否已经排序
          -m 合并两个排序文件
          -u 删除所有同样行
          -o 存储sort结果的输出文件名
          -t 域分隔符,用非空格或tab开始排序
          +n :n 为列号,使用此列号开始排序
          -n 指定排序是域上的数字分类项
          -r 比较求逆
        sort -c test.txt 测试文件是否分类过
        sort -u test.txt 排序并合并一样的行
        sort -r test.txt 以相反的顺序排列
        sort -t "/" +2 test.txt 以"/"分隔,第二个域开始分类

      (2)uniq命令
          uniq [options ] files 从一个文本文件中去除或禁止重复行
          -u 只显示不重复行
          -d 只显示有重复数据行,每种重复行只显示其中一行
          -c 打印每一重复行出现次数
          -f :n为数字,前n个域被忽略
          uniq -f 2 test.txt 忽略前2个域

      (3)join 命令
          join [options] file1 file2 用来将来自两个分类文本文件的行连在一起
          -an,n为一数字,用于连接时从文件n中显示不匹配行
          -onm ,连接域,n为文件号,m为域号
          -jnm,n为文件号,m为域号,使用其他域作连接域
          -t ,域分隔符。用来设置非空格或tab键的域分隔符。

        (4)split命令
          split -output_file_size intput_filename output_filename
          用来将大文件分割成小文件。
            -b n,每个分割文件的大小n
            -C n,每个分割文件一行最多n字节
            -l n,每个分割文件的行数
            -n,同-l n
            split -10 test.txt 将test.txt分割成10行的小文件

        (5)cut 命令
          cut -c n1-n2 filename 显示每行从开头算起 n1 到 n2 的文字。
          cut -c 3-5 test.txt 显示test.txt中每行从第3到第5个字符

[ 本帖最后由 haulm 于 2008-8-26 20:47 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2008-8-29 22:56:05 | 显示全部楼层
请问在刚开始的时候,在linux中要用很长时间读盘时,这时在windows中似乎是正常的,要怎样做才正确呢?
回复

使用道具 举报

发表于 2008-8-29 23:07:28 | 显示全部楼层
有交叉文件链?
这个在 NTFS 和 EXT 里面是正常的。FAT32 是不允许的。

这种错误是可以读取文件的。
回复

使用道具 举报

发表于 2008-8-30 14:53:42 | 显示全部楼层
你的系统读其他的USB 存储器的时候也是这个样子吗?
回复

使用道具 举报

 楼主| 发表于 2008-8-30 21:07:18 | 显示全部楼层

回复 #10 stdio 的帖子

不是,只是其中一个U盘出了错。
回复

使用道具 举报

 楼主| 发表于 2008-9-4 23:04:04 | 显示全部楼层
有谁知道开始读盘有错时怎样正确处理?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-23 15:49 , Processed in 0.040030 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表