花了两个小时的时间,把文件和文件夹相关的常用命令:创建、删除、移动、复制、查找、重命名在linux上测试了一把,总结下来。文件夹的这些基本操作是要多注意的,一不小心就达不到你想要的效果。

文件夹操作:

1. 新建目录

mkdir warehouse/config (warehouse目录已经存在时,创建config目录)

mkdir -p warehouse/config (warehouse目录不存在,使用-p参数创建所有不存在的目录 p即parent父目录之意)

2. 删除目录

rm warehouse (warehouse为空目录时,删除warehouse空目录)

rm -r warehouse (warehouse目录非空时,使用-r参数递归删除目录及目录下所有内容 r即recursive递归之意)

3. 查找目录

find . -name “ware*” -type d (查找当前目录下及所有子目录下名字以ware开头的所有目录 点号代表查找当前目录,可以省去,默认查找当前目录 使用-type d 代表查找目录 d即directory之意)

文件操作:

1. 新建文件

touch demo.txt (在当前目录下创建文件demo.txt)

查了一些资料,没有找到如果需要创建的文件的父目录不存在,怎么用一条命令同时创建目录和文件。目前的解决方法是先创建目录,再创建文件。如下所示:

需求:创建文件filedemo/demo/a.txt,其中filedemohe和demo目录都不存在

mkdir -p filedemo/demo; cd filedemo/demo; touch a.txt (可以这样直接输入一行,其实是三个命令;也可以三个命令一个一个执行)

2. 删除文件

rm demo/a.txt (删除demo目录下的a.txt文件)

3. 查找文件

find . -name “a*” -type f (查找当前目录下及所有子目录下名字以a开头的文件)

4. 查看文件内容

cat

more

less

head

tail

具体请参考我的另一篇博客:Linux查看文本文件内容命令总结

移动

文件:

mv demo.txt file/demo_1.txt (将当前目录下的demo.txt文件移动至file目录下并命名为demo_1.txt,如果demo_1.txt已经存在,覆盖之)

mv demo.txt file/ (同上)

文件夹:

mv cws_demo file/ (将cws_demo目录移动至file目录下)

mv cws_demo/* file/ 或者 mv cws_demo/. file/ (将cws_demo文件夹下的所有内容移动至file目录下,但不包括demo目录本身)

复制

文件夹:

1)cp -r 源目录 目标目录 (当目标目录下存在同名的目录时,cp命令会将源目录中的文件和目录递归的放入已经存在的目录中,如果有同名的文件,则覆盖掉;目标目录中之前存在的文件和目录不会被删除)

2)cp -r cws_demo/* cws_demo1 或者 cp -r cws_demo/. cws_demo1(将cws_demo文件夹下的全部内容复制到cws_demo1文件夹下,不包括cws_demo目录本身)

文件:

cp 源文件 目标目录|目标文件 (当目标目录下存在同名文件或目标文件已经存在时,cp命令会覆盖掉原来的文件)

重命名

文件:

mv demo.txt demo_1.txt (将当前目录下的demo.txt文件重命名为demo_1.txt,如果demo_1.txt已经存在,则覆盖之)

文件夹:

mv cws_demo cws_demo1 (将cws_demo重命名为cws_demo1,如果cws_demo1已经存在,则系统会将cws_demo移动至cws_demo1目录下;此时,可以使用cp -r命令将cws_demo目录中的内容复制到cws_demo1中)

文件或文件夹中存在空格时的处理

如果文件或文件夹中存在空格,可以使用双引号“”标明是一个整体,也可以使用反斜杠\表示后面的字符不代表其他意思,只代表本意。如下图所示:

touch “hehe hehe.txt” —–创建文件

mkdir demo\ demo —–创建文件夹

Linux下文件和文件夹操作命令详解的更多相关文章

  1. 【大数据】Linux下安装Hadoop(2.7.1)详解及WordCount运行

    一.引言 在完成了Storm的环境配置之后,想着鼓捣一下Hadoop的安装,网上面的教程好多,但是没有一个特别切合的,所以在安装的过程中还是遇到了很多的麻烦,并且最后不断的查阅资料,终于解决了问题,感 ...

  2. Linux操作系统的安装以及基本的操作命令详解

    背景:使用的虚拟机安装Linux  虚拟机使用的是VMware  Linux版本:CentOS-6.7-X86    自行下载:CentOS-6.7-x86_64-bin-DVD1.iso 打开VMw ...

  3. Linux下rz命令使用的实例详解

    Linux中rz命令和sz命令都可用于文件传输,而rz命令主要用于文件的上传,下面将通过几个实例来给大家详细介绍下Linux下rz命令的用法,一起来学习下吧. rz命令可以批量上传文件,当然也可上传单 ...

  4. Linux 下编译Android-VLC开源播放器详解(附源码下载)

    这两天需要做音视频播放相关的东西,所以重新找了目前android下的解码库.Android自带的解码库支持不全,因此很多第三方播放器都是自带解码器,绝大部分都是使用FFMpeg作为解码库.我11年的时 ...

  5. Linux下同步工具inotify+rsync使用详解

    1. rsync 1.1 什么是rsync rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的“Rsync演算法”来使本地和远程两个主机之间的文件达到同步,这 ...

  6. Linux下的搜索查找命令的详解(find)

    4.find Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项 ...

  7. Linux下的crontab定时执行任务详解

    在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为“cr ...

  8. (转)Linux下同步工具inotify+rsync使用详解

    原文:https://segmentfault.com/a/1190000002427568 1. rsync 1.1 什么是rsync rsync是一个远程数据同步工具,可通过LAN/WAN快速同步 ...

  9. Linux下 CentOS 7 对比6 改动详解 及 系统安装

    系统基础服务变化 操作系统 本文CentOS7 为最新版7.5 本文CentOS6 为6.9 操作 Centos6 Centos7 对比 自动补全 只支持命令.文件名 支持命令.选项.文件名 文件系统 ...

随机推荐

  1. BeautifulSoup 用法

    一.标签选择器 1.子节点contents ,child(迭代器), 2.子孙节点 descendants(迭代器) 3.父节点 parent 4.祖节点  parents 5.兄弟节点 next_s ...

  2. dropzone.js使用实践

    官网地址:http://www.dropzonejs.com/ 一,它是什么: DropzoneJS is an open source library that provides drag'n'dr ...

  3. [HNOI2005]狡猾的商人

    题目描述 输入输出格式 输入格式: 从文件input.txt中读入数据,文件第一行为一个正整数w,其中w < 100,表示有w组数据,即w个账本,需要你判断.每组数据的第一行为两个正整数n和m, ...

  4. 【Codeforces Round 418】An impassioned circulation of affection DP

                                                            C. An impassioned circulation of affection   ...

  5. hdu 5493 (树状数组)

    题意:在一个队列中,你知道一个人在他左边或者右边比他高的人的个数,求字典序最小的答案 思路:先将人按  矮-->高 排序,然后算出在每个人前面需要预留的位置.树状数组(也可以线段树)解决时,先二 ...

  6. hdu 3433 A Task Process 二分+dp

    A Task Process Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) T ...

  7. 笔记10 在XML中声明切面(1)

    1.无注解的Audience package XMLconcert; public class Audience { public void silenceCellPhones() { System. ...

  8. A TensorBoard plugin for visualizing arbitrary tensors in a video as your network trains.Beholder是一个TensorBoard插件,用于在模型训练时查看视频帧。

    Beholder is a TensorBoard plugin for viewing frames of a video while your model trains. It comes wit ...

  9. POJ-2299 Ultra-QuickSort---树状数组求逆序对+离散化

    题目链接: https://vjudge.net/problem/POJ-2299 题目大意: 本题要求对于给定的无序数组,求出经过最少多少次相邻元素的交换之后,可以使数组从小到大有序. 两个数(a, ...

  10. Spring利用反射调用接口

    首先在项目中使用java反射调用 //根据实例及参数名获得方法A Method method = event.getObj().getClass() .getMethod(event.getMetho ...