Linux文件管理_1
在Linux中,全部都是文件,所以文件管理在Linux上格外重要,在我们学习文件管理前,我们先学习几个关于文件的命令,之后才能更好的学习文件管理。
目录
pwd命令
cd命令
列出文件内容ls
查看文件状态stat
创建文件touch
文件通配符
复制命令cp
移动与重命名mv
删除rm
显示目录树tree
创建文件夹mkdir
删除文件夹rmdir
查看文件类型file
拓展:rename&&shred
显示当前工作目录
每个shell和系统进程都有一个当前的工作的目录
CWD:current work directory
显示当前的shell CWD的绝对路径pwd:
打印工作目录(当前所在目录)
参数:
-P 显示真实物理路径
-L 显示连接路径(默认)
改变目录
格式:cd [option] dir
作用:改变目录
切换到父目录:cd ..
切换到当前用户主目录:cd
切换至以前的工作目录:cd –
选项:-P 直接进入原目录(非链接目录)
相关的环境变量:
PWD:当前目录文件
OLDPWD:上一次目录路径
列出当前目录的内容或指定目录
格式:ls [option] [files|dirs]
作用:列出当前目录的内容或指定目录
用法:
ls -a 显示所有文件
ls -A 显示所有文件,除.、..
ls -l 长列出
ls -R 递归
ls -ld 显示指定目录的详细信息。
ls -1 竖显示
ls -S 按文件大小降序排列
ls -t 按修改时间(mtime)从新到旧排列
ls -ut 按访问时间(atime) 从新到旧排列
ls -U 按文件存放的先后顺序
ls -X 按文件后缀排序
ls -i 显示文件的inode号
ls -Z 显示文件的context值
查看文件的状态
命令:stat
文件:metadata,data
三个时间戳:
access time:访问时间,atime,读取文件内容
modify time:修改时间,mtime,改变文件内容(数据)
change time:改变时间,ctime,元数据发生改变
创建空文件和刷新时间
格式:touch [option]… file …
作用:创建空文件和刷新时间
OPTION:
-a 仅改变atime和ctime
-m 仅改变mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss]
指定atime和mtime的时间戳
-c 如果文件不存在,则不予创建
touch filename :
当文件不存在时,则创建一个空文件,名为filename
当文件已存在时,则更新期时间戳
-a 仅更新atime,ctime
-m 仅更新mtime, ctime
touch filename 更新全部时间戳。
文件通配符
在好多时候我们可能需要查找有相同字符,或者有一定规则的名字的文件或目录,如果我们还是利用手工一点一点的去敲出来,无疑会浪费我们好多时间,此时,我们可以利用通配符来进行文件匹配,可以较少好多我们的时间,快捷,方便,首先我们看看都有那些通配符:
* 匹配零个或多个字符
? 匹配任何单个字符
~ 当前用户家目录
~mage 用户mage家目录
~+ 当前工作目录
~- 前一个工作目录
[0-9] 匹配数字范围
[a-z]: 字母
[A-Z]: 字母
[wang] 匹配列表中的任何的一个字符
[^wang] 匹配列表中的所有字符以外的字符
还有一种就是预定义的字符类,同样是作为通配符使用
预定义的字符类: #man 7 glob
[:digit:]: 任意数字, 相当于0-9
[:lower:]: 任意小写字母
[:upper:]: 任意大写字母
[:alpha:]: 任意大小写字母
[:alnum:]: 任意数字或字母
[:blank:]: 水平空白字符
[:space:]: 水平或垂直空白字符
[:punct:]: 标点符号
[:print:]:可打印字符
[:cntrl:]: 控制(非打印)字符
[:graph:]: 图形字符
[:xdigit:]: 十六进制字符
接下来我们通过一些演示来说明如何使用通配符
1、 显示/var目录下所有以l开头, 以一个小写字母结尾, 且中间出现至少一位数字的文件或目录
2、 显示/etc目录下以任意一位数字开头, 且以非数字结尾的文件或目录
3、 显示/etc/目录下以非字母开头, 后面跟了一个字母及其它任意长度任意字符的文件或目录
4、 显示/etc/目录下所有以rc开头, 并后面是0-6之间的数字,其它为任意字符的文件或目录
复制文件和目录cp
命令:cp
格式:cp[option]...[-T] source dest
cp[option]...source...directory
cp[option]... -t directory source
说明:
cp A B
A是文件:
1.如果目标不存在,新建B,并将A中的数据拷贝到B中
2.如果目标存在,且B是文件,将A中的数据覆盖到B中
3.如果B是目录,在B下新建一个与源文件同名的文件并将内容进去
A是目录:(需要参数 -r)
1.如果B不存在,则创建指定目录,则创建指定目录,复制A目录下文件到B目录
2.如果B存在:
1.如果B是文件:报错
2.如果B是目录:则将包括A目录一起复制到B
cp A B C D H
如果ABCD是文件:
当 H 是目录且存在的情况下才能拷贝
如果ABCH是目录:(必须用 -r)
当 H 是目录且存在的情况下才能拷贝,将包括ABCD目录一起复制到H下
cp常用选项:(cp本身是直接复制原文件的,而不是链接文件)
-i:prompt before overwrite 覆盖前提示
-n:do not overwrite an existing file 不覆盖已存在的文件(也不追加)
-r,-R:copy directories recursively 递归拷贝目录以及文件内容
-a:same as -dR --preserve=all 拷贝全部文件且权限不变
-d:same as --no-dereference --preserve=links
若文件为链接文件,则只复制链接属性,不复制源文件本身
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用)
-f:当覆盖时,如目的文件的缺少写权限时,强制删除目的文件,并新建再填充内容。当有-n时,无效
-v:显示拷贝的过程
移动和重命名文件
格式:mv [OPTION]... A(源)... B(目的)
作用:移动和重命名文件
参数:-i: 交互式(会询问)
-f: 强制(不询问)
说明:一般我们会用这个命令进行移动和重命令,如果我们将文件移动到不同的文件,就是移动,如果我们将文件移动到原目录,就是重命令
删除操作
格式:rm [OPTION]... FILE...
作用:删除文件或目录
参数:-i: 交互式
-f: 强制删除
-r: 递归(可以递归删除文件和目录)
目录操作
tree 显示目录树
-d: 只显示目录
-L level: 指定显示的层级数目
-P pattern: 只显示由指定pattern匹配到的路径
mkdir 创建目录
-p: 存在于不报错, 且可自动创建所需的各目录
-v: 显示详细信息
-m MODE: 创建目录时直接指定权限
rmdir 删除空目录(可以用rm代替)
-p: 递归删除父空目录
-v: 显示详细信息
确定文件内容
格式:file [options] <filename>...
常用选项:
-b 列出文件辨识结果时, 不显示文件名称
-f filelist 列出文件filelist中文件名的文件类型
-F 使用指定分隔符号替换输出文件名后默认的”:”分隔符
-L 查看对应软链接对应文件的文件类型
--help 显示命令在线帮助
拓展:
rename:批量改名 '.txt' '.doc' *.txt
shred 粉碎功能(不做演示)
Linux文件管理_1的更多相关文章
- Linux文件管理相关命令
Linux文件管理相关命令 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux文件管理背景知识之后, 我们可以 ...
- Linux文件管理上
Linux文件管理 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 对于计算机来说,所谓的数据就是0和1的序列.这样的一个序列 ...
- Linux文件管理和编辑常用命令
Linux文件管理和编辑常用命令 mkdir 命令 功能说明 mkdir 命令用于创建一个目录,mkdir是make directory的缩写 格式: mkdir [选项] 目录名 mkdir 命令的 ...
- 转 Linux文件管理
Linux文件管理 http://www.cnblogs.com/vamei/archive/2012/09/09/2676792.html 作者:Vamei 出处:http://www.cnblog ...
- 3-2 LInux文件管理
LInux文件管理 文件系统目录结构 Linux中目录结构是有一定的约定的FHS /bin:存放二进制程序 /boot:启动相关 /dev:设备文件 /etc:配置文件 /home:用户家目录 /li ...
- linux文件管理--压缩打包
目录 linux文件管理--压缩打包 1.压缩打包介绍 2.gzip压缩工具 3.zip压缩工具 注意: 4.tar压缩工具 5.tar生产案例实践 linux文件管理--压缩打包 1.压缩打包介绍 ...
- day58:Linux:BashShell&linux文件管理&linux文件下载上传
目录 1.BashShell 2.Linux文件管理 3.Linux文件下载和上传 BashShell 1.什么是BeshShell? 命令的解释,用来翻译用户输入的指令 2.BashShell能做什 ...
- 3-1 Linux文件管理类命令详解
根据马哥Linux初级 03-01整理 1. 目录管理 ls cd pwd mkdir rmdir tree 2. 文件管理 touch stat file rm cp mv nano 3. 日期时间 ...
- linux文件管理之bash shell
BASH Shell 对文件进行管理 ========================================================创建.复制.删除.移动.查看.编辑.压缩.查找 内 ...
随机推荐
- 神经网络与深度学习笔记 Chapter 3.
交叉熵 交叉熵是用于解决使用二次代价函数时当单个神经元接近饱和的时候对权重和bias权重学习的影响.这个公式可以看出,当神经元饱和的时候,sigma的偏导接近于0,w的学习也会变小.但是应用交叉熵作为 ...
- php递归查找指定目录下及子文件名称是否包含中文空格及括号
//php递归查找该目录下及子文件名称是否包含中文空格括号 function searchDir($path,&$data){ if(is_dir($path)){ $dp=dir($path ...
- JS中的函数、BOM和DOM操作
一.JS中的函数 [关于注释] /** [文档注释]:开头两个*.写在函数上方,在调用函数时可以看到文档上方的描述信息. */ // 单行注释 /* 多行注释 */ 1.函数的声明及调用 (1) ...
- SVG交互动画制作
前面我们已经说过了要怎样制作CSS3动画,但是SVG动画一直都没有时间研究过,正好趁现在有一点时间静下心来研究一下. 一般来说,常见前端动画实现方案分为三种,CSS3动画,HTML动画(SVG动画), ...
- Java并发基础——Thread
并发编程可以使我们将程序划分为多个分离的,独立运行的任务.通过多线程机制,这些独立任务都将由执行线程来驱动.在使用线程时,CPU将轮流给每个任务分配占用时间,每个任务都觉得自己在占用CPU,但实际上C ...
- Navicat for MySQL11--使用经验
Navicat for MySQL11--使用经验.. --------- /-------------------导出SQL:右键表--转储SQL文件--结构和数据---(Finished - Su ...
- Java的类型转换
Java的类型转换 在适当的时候,我们会想要将一种数据类型自动转换成另一种,比如把int转化成float类型.Java有隐藏式的自动转换,可以自动转换成想要的类型,但是强制的自动转换的话,.需要将希望 ...
- 广度优先搜索(BFS)——迷宫的最短路径
宽度优先搜索按照距开始状态由近到远的顺序进行搜索,因此可以很容易的用来求最短路径,最少操作之类问题的答案. 宽度优先搜索介绍(一篇不错的文章). 题目描述: 给定一个大小为N*M的迷宫.迷宫有通道和墙 ...
- jenkins 每个月1号到7号 一天执行一次
在线Crontab表达式执行时间验证 / crontab执行时间计算 - aTool在线工具验证 http://www.atool.org/crontab.php 1.Build periodic a ...
- JS中的DOM操作和事件
[DOM树节点] DOM节点分为三大类: 元素节点. 属性节点. 文本节点: 文本节点.属性节点属于元素节点的子节点.操作时,均需要先取到元素节点,再操作子节点:可以使用getElement系列方法, ...