第二弹Linux基础一mkdir/cp/mv/rm/zip/unzip命令详解

时间:2022-10-21 17:40:34
一、先补充上篇
Linux基础一cd 与 ls 命令详解
基础命令cd的延伸 pwd 命令用cd切换目录后,有的时候不知道当前在那个目录下,可用pwd命令查看当前所在目录。
用法:直接在命令端输入  pwd

二、本篇讲哪些命令?
mkdir    创建目录命令
cp          复制命令
mv         剪切或重命名命令
rm         删除命令
zip         压缩命令
unzip    解压缩命令

三、命令详解
mkdir

命令格式:mkdir  [选项]  目录
作用用户:所有用户
①不加选项时,直接创建目录,如 mkdir /web  就直接在根目录下面创建了web目录
②加选项 -P ,创建目录,可以多层级,如果其中某个目录不存在,则创建此目录,如 mkdir/web/aa/bb 假设上面创建了web目录,但aa目录没有,不加 -P选项时会报错。加了会直接把aa目录也创建。简称递归创建。

cp
命令格式:cp  [选项]  源文件或源目录    目标目录
作用用户:所有用户
常用选项:
    -r    复制目录及子目录
    -R  复制目录及子目录,与 -r功能上一样
    -u   只有在源文件的修改时间较目标文件更新时或者相同路径下无此文件才会复制
    -f    强制复制,不加-f时,如果目标路径里有相同文件,会提示是否要覆盖,加-f不提示直接覆盖
    -p   复制时保留文件属性( 源文件相关联的修改日期、时间和访问控制列表等
    -v    复制时显示命令执行的详细信息
    -i    交互复制,即复制时询问用户需用户确认

常用示例:

①把文件file1复制并更名成file2
cp file1  file2
注:如果file1不再当前目录要写绝对路径。如果不是要复制到当前目录同样要写绝对路径

②把目录/web目录下的所有文件及子目录复制到/aa下面
cp -r  /web/*  /aa
注:路径问题同①的注解一样。*符号表示匹配web目录下的所有文件及目录

③把目录bb及其子文件复制到aa下面
cp -r bb  aa/
注:源目录与目标目录都是相对路径,拿捏不准的话可以使用绝对路径

④一次性复制多个文件或目录
cp a.txt b.txt  aa/
注:复制多个文件或目录可以依次写源文件以空格分隔,后面再写目标路径即可。

mv
命令格式:mv [选项]  源文件或源目录  目标目录
作用用户:所有用户
常用选项:
    -b    如果已存在相同文件名,则覆盖前进行备份
    -f     如果已存在相同文件名,而用户不具有写的权限,则强制覆盖
    -i     如果已存在相同文件名,覆盖前提示用户进行确认
    -u    比较原文件与目标文件修改时间,如果目标文件较新则不覆盖
    -v     显示命令执行的详细信息

用法与cp基本相似,可以参考cp示例。

rm
命令格式:rm  [选项]   目标文件或目录
作用用户:所有用户
常用选项:
   -f   强制删除,不提示
   -i   进行交互式删除即删除之前询问是否确认删除
   -r   删除目录及子文件,递归删除
   -v  显示命令执行的详细信息

示例:
①rm -f a.txt
注:删除a.txt文件,不询问直接删除,注意文件路径问题,前面已经说过。

②rm -rf  /aa
注:删除aa文件夹及子文件夹,不询问直接删除

注意:使用rm时千万注意,这个命令很危险,一个弄不好删除错了路径就悲剧了!!!


zip
命令格式:zip [选项]   压缩后名称   准备压缩的源文件
常用选项:
    -r    递归压缩文件夹
   -P    加密压缩
    -m  将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中
    -x    压缩时排除符合条件的文件

示例:
①zip -r aa.zip  ./*
注:递归压缩当前文件夹下所有内容

②zip -r aa.zip /aa/*
注:递归压缩aa文件夹下面所有内容

③zip -m aa.zip  bb.txt
注:向压缩文件aa.zip中添加bb.txt文件

④zip -r aa.zip ./* -x bb.txt
注:递归压缩当前目录下除bb.txt文件的其他文件

⑤zip -rP 123456 aa.zip ./*
注:递归压缩当前目录下所有文件并设置压缩密码123456

unzip
命令格式:unzip [选项]   目标目录   压缩包
常用选项:
     -d   把压缩包解压到指定目录
     -f    解压时覆盖现有文件
     -n   解压时不要覆盖现有文件
     -v   解压时显示详细的执行信息

示例:
①unzip b.zip
注:把b.zip解压到当前目录

②unzip -d ./bb aa/a.zip
注:把aa文件夹下的a.zip解压到bb文件夹下  . 表示当前目录


终于又搞定一篇,吼~~~~~~~~

本文章中只列出了一些常用的命令选项,因为有的选项可能很长时间也不会碰上~

如果有不详细或错误的地方欢迎大家指出!!