“ 上一期我们讲解了Linux目录操作中的ls cd pwd命令,这一期我们把精力集中在对文件的复制,删除和移动三个命令里。”
首先给出上一篇文章末尾的留下的习题的答案,比较简单,相信大家都有了自己的答案,
# 回到家目录
cd ~
# 看看家目录里都有什么
ls # ls -l
# 使用绝对路径进入 /lib/ufw 目录
cd /lib/ufw
# 看看/lib/ufw目录下有什么,并且需要展示出文件大小 (使用k M G等单位)
ls -lht
# 回家 然后输出自己家的绝对路径
cd ~
pwd
上期的讲解主要是围绕着文件和目录的查看和切换来讲解的,这期的主要内容是对文件进行复制,删除和移动以及重命名操作,在有了上一期的基础,本期内容将非常简单。废话不多说,让我们开始本期内容吧。
1 文件的复制 - cp
在对Linux的日常使用中,我们经常用到的一个命令就是cp命令,它的主要作用就是复制,把一个文件复制到另一个位置,也就相当于我们在Windows操作系统中的ctrl+C和ctrl+V,不过我们一条命令就可以完成了,是不是很方便呢!
cp: 用于复制文件或目录。
让我们直接上代码吧,看看cp命令是如何使用的
# 复制一个文件到当前目录下
cp /lib/ufw/ufw-init .
关键注!:使用tab键可以进行补全,比如你输入了/li的时候,按下tab键,它会自动给你补齐,如果没有给你补齐,说明有很多叫li什么的文件夹,连续按下tab键,就会显示目录下所有文件;比如后面的uf按下就会出现很多,然后你再输入w-的时候,再继续按tab键,就会给你补全完整路径了!!!
上面的技巧非常关键,不懂再去google看,在不懂后台问我,必须要懂的技巧,必须要懂,必须懂!!!
下面给出一个复制目录的代码,不使用参数的时候会报错
# -a 复制目录到当前文件夹 相当于-dpr
# 现在不要深究 -dpr 知道复制目录使用-a肯定没问题就行
cp -a /lib/ufw/ .
# 给出dpr的解释
# -d 复制保留软连接
# -p 复制保留权限和修改时间
# -r 复制的时候把子目录以及子文件也复制进去
后面讲解了文件权限,软连接以后,余下参数自然就会明白,不过-a可以解决你99%的复制文件夹的问题,一般来说使用-a即可。
cp命令也可以使用绝对路径,也可以同时复制多个文件到当前路径
# 复制多个文件到当前路径 此时最后一个参数是你复制到的位置
cp /lib/ufw/ufw-init /lib/ufw/ufw-init-functions .
2 移动和重命名文件 - mv
上面的部分我们详细的讲解了Linux的cp命令,我们现在可以把一个或者多个文件(夹)拷贝到我们想要的位置了。但是我们的日常使用中可不只只有copy,我们经常会移动和重命名一些文件或者文件夹。这个时候就到了我们的mv命令出场的时候了。
mv:为文件或目录改名、或将文件或目录移入其它位置。
mv命令一般来说我们都会使用默认参数,即直接使用进行文件的移动和重命名操作,下面来看看对文件重命名案例吧。
# 建立一个测试文件夹
mkdir test
# 进入test文件夹
cd test
# 复制一个文件到test文件夹
cp /lib/ufw/ufw-init .
# 查看当前目录下的文件
ls
# 使用mv进行重命名操作
mv ufw-init ufi
# 再次查看
ls
上面的操作就是文件的重命名操作了,使用同样的方法还可以对文件夹进行重命名哦。
# 回到上一层目录
cd ..
# 对test文件夹进行重命名
mv test testlalala
下面讲解一下文件和文件夹的移动操作
# 进入testlalala文件夹
cd testlalala
# 把整个/lib/ufw文件夹复制过来
cp -a /lib/ufw .
# ls一下
# 把文件ufi放进文件夹ufw里
mv ufi ufw
# ls 查看是不是成功了
# 把ufw文件夹移动到testlalala外面
mv ufw ..
# 回到上一级目录查看
cd ..
ls
上面的操作就是mv命令的基础操作了,下面讲解一点进阶的操作,这些操作不需要记住,只需要你遇到问题的时候知道去搜索引擎搜索 “mv" 命令参数,知道遇到什么问题使用什么参数即可。
# -b参数 目标文件/目录存在的时候,进行移动覆盖之前对其创建一个备份
# -u参数 待移动文件比目标文件新或者目标文件不存在时,才执行
# -n参数 不要覆盖任何已存在的文件或者目录
不过日常使用中基本上是用不到这些参数的,只有写shell脚本的时候才会有机会使用到这些参数。
3 删除文件和目录 - rm
我们在上面的内容介绍了对文件的复制,移动等等,现在我们ls一下我们的当前路径,可以发现有很多的垃圾文件和垃圾目录,这个时候就需要我们使用rm命令进行删除了。
rm:用于删除一个文件或者目录。
不要试图 rm -rf /*
不要试图 rm -rf /*
不要试图 rm -rf /*
上面的命令人称Linux杀手,跑路神器,大家没有一定经验不要尝试和使用。
下面来进行两个实例来展示rm命令的使用吧,首先是删除文件
# 删除文件 先找到我们的ufw文件夹 然后cd进入
ls
上面是删除之前的文件内容,下面进行文件删除
# 删除文件ufi
rm ufi
# 再次查看文件夹下已经没有了这个文件了
ls
!!Linux命令行下是没有回收站的,删了就是删了!!
下面展示一下删除文件夹
# 回到testlalala和ufw文件夹的上一层文件夹
# 删除testlalala
rm -r testlalala
# 删除之前会询问是不是真的要删除
rm -ri ufw
# 终极删除大法 -r参数指即使只读也直接删除不进行询问
rm -rf ufw
文件删除也支持多文件同时删除 比如下面这样
rm -rf ufw-init ufw-init-functions
到这里为止,我们已经学会了在Linux下进行切换目录,查看目录下的文件以及详细信息等等,复制文件,移动重命名文件以及对文件的删除操作,下面一节课我们将要学习创建目录,输出文件内容,创建软连接以及简单介绍一下Linux下的终极神器 --- vim。
最后留个简单的练习
# 在家目录里创建一个文件夹test
cd ~
mkdir test
# 复制/lib/ufw到家目录
# 移动ufw文件夹到test文件夹里
# 切换到ufw文件夹
# 查看当前目录的文件详细信息
# 把文件夹下的文件都移动到上一层目录
# 切换到上一层目录 然后把目录下的文件重命名为 a1 a2
# 回到家目录
# 删除test文件夹以及里面的所有东西
案将在下篇对应系列推文中展示,下次内容更精彩哦
如果你喜欢我的文章,请收藏我的文章并且给我个赞,你的支持就是我更新的最大的动力,关注我会有更多惊喜哦,专注于生物信息学以及数据分析入门和进阶教程,也许我给不了你从10-100,但是我可以给你最好的从0-10!
最后,关注我的公众号,领取更多学习资料吧!!!
打开v搜索,”轻松玩转生信“或者从下面文章进去获取二维码关注哦