rhcsa第三次作业#文件和目录的创建删除,复制命令以及mv命令
前言
学习如何创建文件,删除文件,创建目录,删除目录
以及cp命令:
并实现,复制文件粘贴重命名
复制文件到目录重命名
复制目录到目录
复制文件到目录且不改变文件属性
mv命令的使用
一、创建,删除文件和目录
创建普通文件:touch [OPTION]… FILE…
若文件已存在,则会更新文件的三个时间(可使用stat查看),若文件不存在则会创建文件
可以同时创建多个文件
touch 文件1,文件2,文件3…
或 touch {文件1,文件2…}
[root@server ~]# touch {1,2}{3,4}
[root@server ~]# ls
13 14 23 24 anaconda-ks.cfg initial-setup-ks.cfg new
[root@server ~]# touch abc{1..5}
[root@server ~]# ls
13 14 23 24 abc1 abc2 abc3 abc4 abc5 anaconda-ks.cfg initial-setup-ks.cfg new
[root@server ~]#
删除文件:rm [选项] 文件名
创建目录:mkdir [选项] [/路径/]目录名
部分选项:
-p 可快速创建出目录结构中指定的每个目录,对于已存在的目录不会被覆盖
-v 显示创建目录的详细过程
删除目录:rm -r [-f] 目录文件名
-r表示强制删除目录以及其子目录
二、cp复制粘贴命令
复制文件或者目录
语法:cp [选项] 原文件 目标文件
部分选项:
选项 | 功能 |
---|---|
-a | 通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录 |
-d | 拷贝时保留链接 |
-f | 在覆盖已经存在的目标文件时不提示 |
-i | 交互式拷贝,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖 |
-p | 除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件 |
-r | 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名 |
实现部分:
复制文件粘贴重命名
[root@server ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg
[root@server ~]# mkdir data1
[root@server ~]# mkdir data2
[root@server ~]# touch /root/data1/file1
[root@server ~]# ls /root/data1
file1
[root@server ~]# cp /root/data1/file1 /root/data2
[root@server ~]# ls /root/data2
file1
[root@server ~]# mv /root/data2/file1 /root/data2/file2
[root@server ~]# ls /root/data2
file2
复制文件到目录重命名
[root@server ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg
[root@server ~]# mkdir data1
[root@server ~]# mkdir data2
[root@server ~]# touch /root/data1/file1
[root@server ~]# ls /root/data1
file1
[root@server ~]# cp /root/data1/file1 /root/data2/file2
[root@server ~]# ls /root/data2
file2
[root@server ~]#
复制目录到目录
[root@server ~]# cp -r data1 data2
复制文件到目录且不改变文件属性
[root@server ~]# cp -a data1/file1 data2
与mv命令的区别:mv类似于剪切文件,不会使文件增多,而cp会使文件数量变多
三、mv命令
move命令,移动或改名文件或者目录,若目标路径下存在同名文件则会覆盖目标文件。
可以将原文件移至一个目标文件中,或将一组文件移至一个目标目录中。
原文件被移至目标文件时,若目标文件是目录,则原文件会被移动到此目录文件下且文件名不变。即使原文件和目录的参数有多个,所有原文件都会移动到目标目录中且保留原文件名。
若目标文件不是目录,则原文件只能有一个并覆盖同名文件,或在同一目录下,更改文件名为原文件名。
mv命令的格式
Usage: mv [OPTION]... [-T] SOURCE DEST
or: mv [OPTION]... SOURCE... DIRECTORY
or: mv [OPTION]... -t DIRECTORY SOURCE...
部分选项
--backup[=CONTROL] 覆盖文件前先备份
-b 像 --backup 但是不用接收参数
-f, --force 覆盖之前不提示
-i, --interactive 交互式操作,覆盖之前提示,需确认yes or no[y/n]
-n, --no-clobber 不覆盖文件
若同时使用-i, -f, -n,则只实现后面的那个
--strip-trailing-slashes 删除参数后面所有的/
argument
-S, --suffix=SUFFIX 给备份文件指定后缀
-t, --target-directory=DIRECTORY 指定文件要移动到的目录
-u, --update 当源文件比目标文件新或者目标文件不存在时,才执行移动操作
-v, --verbose 冗余模式执行 mv,解释 mv 命令的执行过程
--help 查看帮助信息
--version 显示版本信息退出
文件改名
[root@server ~]# echo >old
[root@server ~]# mv old new
[root@server ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg new
总结
学习如何创建文件,删除文件,创建目录,删除目录
以及cp命令,mv命令的使用
(本文为初学者学习笔记,若有错误之处,感谢大佬指正!)