linux文件和目录管理

文件管理主要命令
cd 切换目录
pwd 显示当前目录
mkdir 新建目录
rmdir 删除空目录

. 代表当层目录
.. 代表上一层目录

  • 代表前一个工作目录
    ~ 代表用户身份所在的主文件夹
    ~account 代表account这个用户的主文件夹

文件管理类的命令

ls [-aAdfFhilnrRst] 目录名称
ls [--color={never,auto,always}] 目录名称
ls [--full-time] 目录名称
-a 全部文件,隐藏文件也一起列出
-A 全部文件,隐藏文件也列出,不包括. 和..两个目录
-d 列出目录本身,文件数据不列出
-f 直接列出结果,不排序
-F 根据文件,目录等给予附加的目录结构,比如 *:代表可执行文件,/: 代表目录 ,=:代表socket文件 ,|:代表FIFO文件
-h 文件容量已人类易读的方式列出来
-i 列出inode号码
-l 列出场数据传,包含文件和权限,比较蝉蛹
-n 列出UID和GID,非用户与用户组的名称
-r 排序结果反响输出
-R 目录的子目录也显示出来
-S 文件容量大小排序,不是文件名排序
-t 时间排序,不是文件名
--color=never 必要根据文件特性给予颜色显示
--color=always 显示颜色
--color=auto 让系统自行根据设置判断是否给予颜色
--full-time 用完整的时间模式输出
--time 输出访问时间或者改变权限属性时间,不是内容更改时间

cp 复制文件或者目录
基本格式

  1. cp [-adfilprsu] 源文件(source) 目标文件(destination)
    2.cp [options] source1 source2 ... directory

-a 相当于pdr的意思
-d 如果源文件为连接文件属性(link file) 复制连接文件属性,非本身
-f 强制,如果目标文件已经存在,并且无法开启,那么删除目标文件在尝试一次
-i 如果目标文件已经存在,覆盖的时候会先询问操作的先行,比较常用
-l 进行硬连接(hard link)的创建,而非复制文件本身
-p 连同文件属性一起复制过去,而非使用默认属性
-r 递归持续复制,用于目录的复制行为
-s 复制成为括号的链接文件
-u 若destination比source旧才更新,否则不更新

cp不加任何参数,复制的是源文件,而非连接文件
复制文件注意一下几点
1.是否需要保证来源文件信息
2.源文件是否为软连接文件
3.源文件是否为特殊文件
4.源文件是否为目录

rm(移除文件或者目录)

基本格式
rm [-fir] 文件或者目录

-f force的意思,忽略不存在的文件,不会出现警告
-i 互动模式,删除之前会询问用户是否操作
-r 递归删除,相当危险,最常用的目录删除

mv (移动文件与目录,或更名)

-f 强制的意思,如果目标文件存在,不会询问直接覆盖
-i 目标文件存在,会询问是否覆盖
-u 如果目标文件存在,source比较新,会更新目标文件

文件内容查阅

cat 从第一行显示文件内容
tac 从最后一行开始显示文件内容,tac是cat的倒写
nl 显示的时候,顺便输出行号
more 一页一页显示文件内容
less 相对more的又是,可以往前翻页
head 只看投机航
tail 只看结尾几行
od 用二进制的方式读取文件内容

1.cat命令
格式 cat [-AbEnTv]
-A : 相当-vET的整合参数,可列出特殊字符,而不是空白
-b:列出行号,仅针对非空白做行号显示,空白行不标记行号
-E:将结尾的断行字符$显示出来
-n:打印出行号,空白也会有行号
-T:将tab按键用^I 显示出来
-v:列出一些看不出来的特殊字符

2.nl 命令
格式:nl [-bnw] 文件
-b:指定行号的指定方式
-b a :表示无论是否为空行,也同样列出行号,类似cat -n
-b t :如果有空行,空的哪一行不要列出行号
-n:列出行号的表示方法
-n ln:行号在屏幕的最左边演示
-n rn:行号在屏幕的最右边显示
-n rz:行号在最左边,加0显示

ex:nl -b a -n rz filename

3.more命令

格式 :more filename

空格:向下翻一页
enter:下滚动一行
/字符串:显示内容中,向下查询字符串这个关键字
:f :立刻显示文件名和目前显示的行数
q :立即离开,不再显示文件内容
b:往回翻页,只对文件有用,对管道无用

4.less命令
格式:less filename
pagedown:向下翻一页
pageup:向上翻一页
enter:下滚动一行
/字符串:显示内容中,向下查询字符串这个关键字
?字符串:显示内容中,向上查询字符串这个关键字
n:重复前一个查询
N:反响重复前一个查询
:f :立刻显示文件名和目前显示的行数
q :立即离开,不再显示文件内容

5.数据选取,head命令
格式:head [-n number] 文件
-n:后面接数字,代表显示几行的意思

6.数据选取, tail命令(常用)
-n :代表显示几行
-f:表示持续检测后面所接的文件名,要等到按下ctrl-c才会结束tail的检测

exp:如果不知道文件有几行,但是执行列出1000行以后的数据
tail -n +1000 filename

7.od [-t type] 文件
-t : 后面可以接很多类型为type的输出
a:使用默认的字符来输出
c:使用ascii字符来输出
d:使用十进制来输出数据,每个证书占用size bytes
f:使用浮点数来输出数据,
o:使用八进制输出数据
x:使用十六进制来输出数据

od -t oCc filename表示将内容和ascll中的内容进行比较

8.touch命令
格式: touch [-acdmt] 文件
-a :仅修改访问时间
-c :仅修改文件时间,如果文件不存在则不创建新文件
-d:后面可以接与修改的日期而不用目前的日期,也可以使用--date=“日期或者时间”
-m:仅修改mtime
-t:后面接与修改的时间而不用目前的时间

范例一:新建一个空的文件并且查看时间

9.umask
表示的是修改默认创建文件的权限接口
直接输入表示查看默认创建文件的给予权限
ex 022 表示在group和other被拿掉w权限

要改变权限只需要
umask 002
表示拿掉other的w权限

每个选项总和为6

10.文件隐藏属性 chattr(设置文件的隐藏属性,理解为changeattribute)
格式:chattr [+-= ] [ASacdistu] 文件或目录名称
+:增加某一个特殊参数,其他原本存在的参数不动
-:减少某一个特殊参数,其他原本存在的参数不动
=:仅有后面接的参数

A:当设置了A这个属性的时候,如果你访问这个目录或者文件时,他的访问时间atime将不会被修改,可避免i/o慢的机器过渡访问磁盘,对速度慢的计算机有帮助
S:一般文件是异步写入磁盘,如果加上这个属性,进行任何文件的修改,这个改动会同步写入磁盘中
a:设置a之后,这个文件只能增加数据,不能删除也修改数据,只有root才能设置这个属性
c:这个属性设置之后,将会自动将这个文件压缩,读取的时候会自动解压,存储的时候,将会进行先压缩再存储
d:dump程序被执行的时候,设置d属性可以将该文件不会被dump备份
i:最无敌的参数,可以让一个文件,不能被删除,改名,设置连接也无法写入,添加数据,对系统安全帮助特别大,只有root可以设置这个属性
s:文件中设置了s属性,如果这个文件被删除,将会完全从这个磁盘空间中删除
u:和s相反,当使用u配置文件,如果文件被删除了,数据的内容其实还在磁盘中,可以使用来找回文件

exp:chattr +i filename
让这个文件不能被删除

10.lsattr(理解为listattribute)显示文件隐藏属性
格式:lsattr [-adR] 文件或者目录
-a :将隐藏文件的属性也展示出来
-d:如果连接的是目录,仅仅列出目录本身的属性
-R:子目录的属性也展示出来

文件特殊权限SUID,SGID,SBIT

1.SUID
1.1 这个权限仅仅对二进制程序有效
1.2 执行者对改程序要有x的执行权限
1.3.本权限只在执行过程中有效
1.4执行者需要有程序所有者的权限

2.SGID
可以针对文件或者目录设置
2.1 对二进制程序有用
2.2 程序执行者对该程序来说,需要有x权限
2.3 执行者执行过程中会获得程序用户组支持

3.StickyBit
针对目录有效,对文件已经没有效果
当用户对这个目录有wx权限
用户在该目录下创建文件或者目录仅有自己和root可以删除该文件

设置使用chmod,修改权限来设置,exp:chmod 4755 filename
4为 SUID
2为 SGID
1为 SBIT

文件相关

一.查看文件类型 file

exp : file filename 必须为当前路径下文件,或者为全路径

二.命令和文件的查询

1.脚本文件名的查询 which
寻找执行文件
which [-a] command
-a:将所有由path目录中可以找到的命令均列出,而不止第一个被找到的命令名称

2.文件名的查找 whereis [-bmsu] filename
-b:只找二进制格式的文件
-m:只找在说明文件路径下的文件
-s:只找source源文件
-u:查找不在上述三个选项的特殊文件

以后也会有find这个查询文件的命令,但是find使用的时间会相对多很多,因为find是直接查找硬盘,如果你的硬盘老旧,那就要等很久,whereis可以加入参数查找相关的数据,如果你要找可执行的文件,那么加上-b就可以了,不加参数会展示所有数据

2.1 同样是查找文件的命令
locate [-ir] keyword
-i 忽略大小写的差异
-r 后面可以接正则表达式的显示方程式

locate寻找的数据是由已经创建的数据库/var/lib/mlocate/里面的数据库里面找到了,所以不用查询硬盘,这个数据库每天更新一次
如果要手动更新,那么输入,updatedb就可以了

2.2 find 查找文件
find [path] [option] [action]
参数:

  1. 与时间有关的参数,有 -atime,-ctime,-mtime
    -mtime n :n位数字,意义为在n天之前的“一天之内”被更改过的文件名
    -mtime +n :列出在n天之前,不含本身,被更改过的文件名
    -mtime -n 列出在n天之内,含本身,被更改过的文件名
    -newer file : file为一个存在的文件,列出比这个文件更新的文件名

exp: find / -mtime 0
find /etc -newer /etc/passwd

比如+4代表,大于等于五天之前的文件名
-4代表小于等于4天内的文件名
4表示4-5天的哪一天的名字

2.和用户和组名有关的参数
-uid n:n为数字,数字是用户的账号id,即uid

-gid n:n为数字,这个数字是用户组名的ID,即GID,这个GID记录在 /etc/group中

-user name: name为用户账号名称
-group name:name为用户组名,例如users

-nouser :找寻文件所有者不存在的人
-no group :找寻用户组不存在的文件

  1. 和文件名有关的操作

-name filename:查找文件名为filename的文件
-size [+-] SIZE :查找比size还要大 + 或者小 - 的文件,这个size的规格有:
c:代表byte,k:代表1024yes,所以要找比50k还大的文件就是,-size +50k
-type TYPE: 查找文件的类型为type的,类型主要有,一般正规文件 f,设备文件 b,c
目录 d,连接文件l,socket s,以及fifo p等属性

-perm -mode:查找文件权限,刚好等于mode 的文件,这个mode为类似chmod 的属性值,举例来说 -rwsr-xr-x的属性为4755

-perm+mode:查找文件权限,包含任一mode的权限的文件,举例来说,我们查找 -rwxr-xr-x,即-perm +755时,但一个文件属性为 -rw-------也会被列出来,因为有-rw属性存在

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,132评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,802评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,566评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,858评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,867评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,695评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,064评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,705评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,915评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,677评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,796评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,432评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,041评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,992评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,223评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,185评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,535评论 2 343

推荐阅读更多精彩内容

  • 处理目录和文件的几个常用命令 ls:展示目录下的内容 cd: 切换到某个目录下 pwd:显示目前的目录 mkdir...
    any_young阅读 481评论 0 0
  • 1 Linux的文件结构 Linux的文件结构类似于倒树形结构。 绝对路径:由根目录(/)开始写起的文件名或者目录...
    被子十三阅读 333评论 0 0
  • 原文地址:https://blog.qjm253.cn/?p=448 目录与路径 相对路径与绝对路径绝对路径:由根...
    SunnyQjm阅读 322评论 0 2
  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 5,719评论 0 10
  • 01 他们都来机场接我,就像当初送我一样,七大姑八大姨的,浩浩荡荡来了一队的人。 所有的人都说我黑了、瘦了,大老远...
    晚来舟阅读 1,003评论 20 24