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 对文件进行管理 ========================================================创建.复制.删除.移动.查看.编辑.压缩.查找 内 ...
随机推荐
- 设计模式,Let's Go! (上)
* { color: #3e3e3e } body { font-family: "Helvetica Neue", Helvetica, "Hiragino Sans ...
- SpringMVC详解(三)------基于注解的入门实例
前两篇博客我们讲解了基于XML 的入门实例,以及SpringMVC运行的详细流程.但是我们发现基于 XML 的配置还是比较麻烦的,而且,每个 Handler 类只能有一个方法,在实际开发中肯定是不可能 ...
- 盼盼Degenerate——清除浮动的方法
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name= ...
- 【Spring】JDBC事务管理XML配置
将spring事务管理与spirng-mybatis分离开了: <?xml version="1.0" encoding="UTF-8"?> < ...
- Android笔记: ListView基本用法-ArrayAdapter
ListView实现过程: 新建适配器->添加数据源到适配器->视图加载适配器 数据适配器: 把复杂的数据(数组.链表.数据库.集合等)填充在制定的试图界面上. 两种常用数据适配器 Arr ...
- [Caffe]史上最全的caffe安装过程
Linux下的GPU版Caffe安装方法 系统环境:Ubuntu 14.04LTS + NV TitanX 1.1 (可选)显卡驱动的安装(有风险) 如果需要重装,需要先卸载已有版本 sudo apt ...
- Java数组笔记
# 数组--------内存 # 2017/8/31 15:29:19 ## 数组(容器) ## - 为了存储同种数据类型的多个值 - 概念 - 数组是可以存储同一种数据类型多个元素的集合, ...
- MariaDB体验1----数据库安装
之前一直都是使用的微软Sql Server数据库,现在在学习数据分析,要用到mysql.刚好公司在进行云架构升级,数据库选型为MariaDB,就顺势安装体验了一把MariaDB.这里记录一下学习过程. ...
- EAGO科技人工智能+澳洲MSPL外汇平台招商
天下财经 首席运营商 EAGO外汇人工智能简介:我们将历史数据导入算法引擎,加入因子(外汇中使用的各种技术指标及各个国家的货币政策等)让计算机通过二元遗传基因.深度神经网络等算法,由机器自主深度学习. ...
- 程序员也是弱势群体?——从WePhone开发者事件说起
作为一名不爱凑热闹的人,今天一直在持续关注一个热点事件--WePhone开发者自杀,即使前几天热议的孕妇跳楼新闻我都不太关注,但是这个事件却让我深深的震撼,花了几个小时在微博上搜索了相关的信息,去了解 ...