一、什么是挂载?
文件系统与目录树结合的动作我们称为挂载。
挂载点一定是目录,此目录为文件系统的入口
二、安装ntfs-3g使得Ubuntu系统可以读写ntfs分区。(安装过则可以跳过)
sudo apt-get ntfs-3g
sudo apt-get ntfs-config
三、挂载和拷贝
1.插入移动硬盘
然后输入命令 sudo fdisk -l(sudo parted -l)
可看到所有硬盘信息和分区信息
2.挂载
创建挂载目录,相当于将usb文件目录当做移动硬盘的目录。
没有的话创建立一个文件夹 sudo mkdir /home/wang/usb
将这个目录的权限改成与自己账户的权限一样,chmod 755 home/wang/usb
然后把移动硬盘挂载在这个文件夹上 mount -o rw /dev/sdb1 home/wang/usb
,这样移动硬盘相当于系统的一个文件夹
-
-o 指定挂载文件系统时的选项
-
ro 以只读方式挂载
-
rw 以读写方式挂载
挂载成功后,usb目录就相当于我们移动硬盘的目录,就可以开始拷贝了。
3.复制
cp -r /home/wang/usb/XXXX /home/myfile
其中xxxx是自己想要复制的内容
语法: cp [选项] 源文件或目录 目标文件或目录
说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。
该命令的各选项含义如下:
- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。
- d 拷贝时保留链接。
- f 删除已经存在的目标文件而不提示。
- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。
- p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。
- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。
- l 不作拷贝,只是链接文件。
拷贝完成,查看文件 ls -hl
5.卸载硬盘
sudo umount /dev/sdb1
一些小知识
一次性解压文件夹下所有文件
for tar in *.tar.gz; do tar xvf $tar; done
加压.tar.gz文件。
重命名文件名字
mv oldfilename newname
unzip 解压报错
Archive: exploit.in.zip
warning [exploit.in.zip]: 7092186403 extra bytes at beginning or within zipfile
(attempting to process anyway)
error [exploit.in.zip]: start of central directory not found;
zipfile corrupt.
(please check that you have transferred or created the zipfile in the
appropriate BINARY mode and that you have compiled UnZip properly)
此时我们需要修复它:
$ zip -FFv foo.zip --out fixed.zip
实例:
$ zip -FFv foo.zip --out fixed.zip
Fix archive (-FF) - salvage what can
Found end record (EOCDR) - says expect single disk archive
Scanning for entries...
Local ( 1 0): copying: d1/f1 (651734 bytes)
Local ( 1 651817): copying: d1/d2/ (0 bytes)
Local ( 1 651905): copying: d1/d2/f3 (80 bytes)
Local ( 1 652083): copying: d1/f23 (891 bytes)
Local ( 1 653021): copying: d1/f27 (8764 bytes)
Local ( 1 661837): copying: d1/f24 (14818 bytes)
Local ( 1 676709): copying: d1/f25 (17295 bytes)
...
Cen ( 1 5488799949): updating: d1/f13
Cen ( 1 5488800052): updating: d1/f14
Zip64 EOCDR found ( 1 5488800155)...
Zip64 EOCDL found ( 1 5488800211)...
EOCDR found ( 1 5488800231)...
$ echo $?
0
参考:https://unix.stackexchange.com/questions/115825/extra-bytes-error-when-unzipping-a-file
疑问
为什么在ubuntu环境下,使用python里面的buffering读取文件不起作用?,依然会产生内存溢出。
分割文件
按字节数
split -b 500M 文件 -d -a 2 前缀名 --additional-suffix=后缀名
按行数
split -l 1000 ../Wattpad_RF/Data/wattpad.sql -d -a 3 wattpad- --additional-suffix=.txt
合并文件:
for i in *.txt;do cat $i >> abc.txt; done
awk '{v=FILENAME}!a[v]++1' ./test/*.txt >./merge/merge.txt
单文件去重:
sort ./merge/merge.txt |uniq >uniq.txt