20175208 张家华 MyCP

一、内容

  • 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数:
  • java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为十进制数字)转化为二进制文件
  • java MyCP -xt XXX1.bin XXX2.txt 用来二进制文件把转化为文本文件(内容为十进制数字)

二、了解CP功能

  • 学习一下Linux系统下的CP功能
  1. 功能: 复制文件或目录
  2. 说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
  3. 参数:
  • -a 或 --archive 此参数的效果和同时指定"-dpR"参数相同
  • -b 或 --backup 删除、覆盖目的文件先备份,备份的文件或目录亦建立为符号链接,并指向源文件或目录链接的源文件或目录。假如没有加上这个参数,在复制过程中若遇到符号链接,则会直接复制源文件或目录
  • -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -l 或 --link 对源文件建立硬链接,而非复制文件
  • -p 或 --preserve 保留源文件或目录的属性,包括所有者、所属组、权限与时间
  • -P 或 --parents 保留源文件或目录的路径,此路径可以是绝对路径或相对路径,且目的目录必须已经丰在
  • -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
  • -R 或 --recursive 递归处理,将指定目录下的文件及子目录一并处理
  • -s 或 --symbolic-link 对源文件建立符号链接,而非复制文件
  • -S <备份字尾字符串> 或 --suffix=<备份字尾字符串> 用"-b"参数备份目的文件后,备份文件的字尾会被加上一个备份字符串。默认的备份字尾符串是符号"~"
  • -u 或 --update 使用这项参数之后,只会在源文件的修改时间(Modification Time)较目的文件更新时,或是名称相互对应的目的文件并不存在,才复制文件
  • -v 或 --verbose 显示执行过程

三、实验截图:

 

四、代码:

https://gitee.com/zhangjiahua20175208/codes/kcay1i4d5lu2ro89fhtse99

posted @ 2019-04-28 20:21  20175208-张家华  阅读(104)  评论(0编辑  收藏  举报