Linux下文件和文件夹操作命令详解
花了两个小时的时间,把文件和文件夹相关的常用命令:创建、删除、移动、复制、查找、重命名在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下文件和文件夹操作命令详解的更多相关文章
- 【大数据】Linux下安装Hadoop(2.7.1)详解及WordCount运行
一.引言 在完成了Storm的环境配置之后,想着鼓捣一下Hadoop的安装,网上面的教程好多,但是没有一个特别切合的,所以在安装的过程中还是遇到了很多的麻烦,并且最后不断的查阅资料,终于解决了问题,感 ...
- Linux操作系统的安装以及基本的操作命令详解
背景:使用的虚拟机安装Linux 虚拟机使用的是VMware Linux版本:CentOS-6.7-X86 自行下载:CentOS-6.7-x86_64-bin-DVD1.iso 打开VMw ...
- Linux下rz命令使用的实例详解
Linux中rz命令和sz命令都可用于文件传输,而rz命令主要用于文件的上传,下面将通过几个实例来给大家详细介绍下Linux下rz命令的用法,一起来学习下吧. rz命令可以批量上传文件,当然也可上传单 ...
- Linux 下编译Android-VLC开源播放器详解(附源码下载)
这两天需要做音视频播放相关的东西,所以重新找了目前android下的解码库.Android自带的解码库支持不全,因此很多第三方播放器都是自带解码器,绝大部分都是使用FFMpeg作为解码库.我11年的时 ...
- Linux下同步工具inotify+rsync使用详解
1. rsync 1.1 什么是rsync rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.它使用所谓的“Rsync演算法”来使本地和远程两个主机之间的文件达到同步,这 ...
- Linux下的搜索查找命令的详解(find)
4.find Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大部分选项 ...
- Linux下的crontab定时执行任务详解
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron].cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间.cron的配置文件称为“cr ...
- (转)Linux下同步工具inotify+rsync使用详解
原文:https://segmentfault.com/a/1190000002427568 1. rsync 1.1 什么是rsync rsync是一个远程数据同步工具,可通过LAN/WAN快速同步 ...
- Linux下 CentOS 7 对比6 改动详解 及 系统安装
系统基础服务变化 操作系统 本文CentOS7 为最新版7.5 本文CentOS6 为6.9 操作 Centos6 Centos7 对比 自动补全 只支持命令.文件名 支持命令.选项.文件名 文件系统 ...
随机推荐
- VueJs 源码解析 (四) initRender.Js
vueJs 源码解析 (四) initRender.Js 在之前的文章中提到了 vuejs 源码中的 架构部分,以及 谈论到了 vue 源码三要素 vm.compiler.watcher 这三要素,那 ...
- java中的多态案例
多态性实际上有两种: 1.方法的多态性: 1.1方法重载:相同的方法名,会根据传入的参数的类型和个数不同执行不同的方法 1.2方法覆写:同一个方法名称,会根据子类的不同实现不同的功能 2.对象的多态性 ...
- 初学Servlet之实现Servlet接口
package app01a;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Servlet;im ...
- MySQL的安全机制
MySQL的安全机制: 1.MySQL登录 mysql -u账户 -p密码 -h127.0.0.1 -P端口 数据库名 mysql -h hostname|hostIP -p port -u user ...
- Bootstrap中关闭第二个模态框时出现的问题和解决办法
Bootstrap中关闭第二个模态框时出现的问题和解决办法 1.关闭第二个模态框时,第一个模态框跟着消失. 解决办法: 第二个模态框的代码不要写在第一个模态框里面,确保两个模态框相对独立; 2.关闭第 ...
- [Codeforces]850E - Random Elections
FWT裸题,写了下模板 #include<cstdio> #define ll long long #define r register int #define MN (1<< ...
- ●codeforces 528D Fuzzy Search
题链: http://codeforces.com/problemset/problem/528/D 题解: FFT 先解释一下题意: 给出两个字符串(只含'A','T','C','G'四种字符),一 ...
- hdu 1828 线段树扫描线(周长)
Picture Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Sub ...
- Ubuntu 16.04安装JDK/JRE并配置环境变量
作为一个Linux新手,在写这篇文章之前,安装了几次jdk,好多次都是环境变量配置错误,导致无法登录系统.经过几天的研究,今天新装系统,从头来完整配置一遍 系统版本:Ubuntu 16.04 JDK版 ...
- xml 制作 RSS 订阅源
首先制作一个 RSS 模板,模板的文件名是 feed.xml,代码如下: <?xml version="1.0" encoding="utf-8"?> ...