拷贝Windows系统下的文件到Linux中打开,拷贝Linux中的文件在Windows下打开

先说Windows系统下的文件到Linux中打开

背景:1、在虚拟机中安装centos,练习Linux。其中,利用U盘充当硬盘,进行磁盘的操作练习。

            2、把U盘插在电脑上,虚拟机进行自动挂载。(挂载在哪)

             3、挂载在哪?你得先知道U盘在系统中叫啥,才能找它。

                   用“fdisk -l”命令,这个命令用来查看磁盘情况。其中最后“/dev/sdb1”就是你得u盘设备。

             4、接下来就可以查看它的挂载点了。用“df  /dev/sdb1”命令。看见,挂载在/media下。

            5、可以查看下U盘的情况,“ls -al  /media/C005-EA80”。由于我之前将U盘格式化为FAT32,所以里面什么也没有。(只有“.”和“. .”)

            6、之所以将U盘格式化成FAT格式。因为格式成ext4在windows下无法打开。格式成NTFS格式在Linux下不好使。

                 至于格式化命令:mkfs。(我是最后不知道把U盘咋整不对劲(一把辛酸泪),弄不好了,在图形界面下格式化)

好了,问题来了,U盘是空的,咋们在里面建立点文件,填补下它空虚的小心灵。

下面是正文:

1、先进入到磁盘的目录下(cd  /media/C005-EA80),建立一个文件“vim   try1”。里面输入内容“hahaha”(这里先全部用英

      文输入)(后面会有介绍)。

      在命令窗口中,“ls”,“less try1”,检查,正确建立。切换到Linux的图形界面中找到相应文件,双击打开,内容正确。

2、手痒痒,突然想看看这文件在Windows下的样子。

       先卸载设备(这步很重要)(后面有介绍)“umount  /dev/sdb1”。然后在虚拟机上断开连接,在Windows下查看U

        盘中的文件。Windows下双击文件,打不开,打不开哦。why?think,thing.右键,查看文件属性,你会发现,文件连后缀名

       都没有。而Windows系统是靠后缀名识别文件的。

3、这简单,将原文件在Linux中重新命名,加上.txt不就成了。确实如此。

mv try1 try1.txt
ls -al
cd ..//返回上一层,否则由于正处于U盘的设备中,无法退出 
umount /dev/sdb1 

 4、这时再在Windows下看U盘中的内容,双击try1文件,能正确打开。

 5、这里为什么要强调要先umount U盘设备。因为如果直接在虚拟机上弹出,在Windows中会发现try.txt文件并没有出现,

       仍然是try文件。(具体原因不清楚)。

总结,Linux的文件添加合适的后缀名后,可以再Windows中打开。

还有个问题,Windows系统中的文件如何在Linux中打开。(肯定不是去掉后缀名啊)

1、我随手将桌面上的一个txt文件复制到U盘上,在Linux的图形界面中,打开U设备目录,双击文件,它竟然乱码。

       我得把它头打烂了。

2、https://www.cnblogs.com/no7dw/archive/2013/05/21/3090594.html

 Linux显示在Windows编辑过的中文就会显示乱码是由于两个操作系统使用的编码不同所致。Linux下使用的编码是utf8,而Windows使用的是gb18030。因此,解决Linux打开txt文件中文乱码可有如下两种方法。

  方法一:

  在附件终端中,进入到txt文件所在目录,使用命令符“iconv -f gb18030  -t utf8 1.txt -o 2.txt”把gb18030编码的1.txt转换成utf8的2.txt。这样2.txt就成为Linux支持的编码。

3、我对上面的一些地方持怀疑态度,但是它能解决问题是真。

4、顺带一提的是,我复制进去的文件名带有空格。空格需要用 转义 处理一下。用“\   ”代替“   ”。

5、文件转换格式:“iconv   -f   gb18030   -t   utf8    i\   dont\    know.txt   -o    uknowcopy.txt”

6、在图形界面下再次打开该文件,正常显示。

 总之,Windows下的文件在Linux中打开,要转编码格式。

问题并不是到这里就结束了。上面并没有提及到,为什么是“gbk”与“utf8”编码之间的转换?我们如何知道文件的编码?

查看文件的编码,这里说两种方式:https://jingyan.baidu.com/article/36d6ed1f6fc8b71bcf48838e.html

“file -i 文件名”

还有一种是,用vim打开文件,输入“:set fileenconding”

 还有个问题是,上面为什么建立文件的时候,只让输入英文。(因为,我Linux的Ibus框架中,中文输入法没装上,)

https://blog.csdn.net/sinat_38816924/article/details/82110602

上面是我装中文输入法的过程,大佬一看,指出问题在哪?

这里,你查看下之前建立的try1的文件编码,会发现它是us-ascii编码。

如果在Linux的命令窗口中打开上面的utf8编码格式的uknow.txt,会发现汉字的地方会乱码成小方块。

是,命令窗口不支持中文。(即是将其设置成LANG=zh_CN.UTF-8)。

至于命令窗口的中文化,随它去。

猜你喜欢

转载自blog.csdn.net/sinat_38816924/article/details/82534148
今日推荐