Linux文件操作命令学习总结

Liunx文件操作命令学习笔记总结

在总结linux文件操作过程中发现可以使用5w1h递归方式总结linux文件,将思路捋顺记录如下:
Linux下一切皆文件,以文件为主题进行5w1h总结:

1w.hat(Linux文件是什么)

先解读下 计算机文件:计算机文件属于文件的一种,与普通文件载体不同,计算机文件是以计算机硬盘为载体存储在计算机上的信息集合。文件可以是文本文档、图片、程序等等。文件通常具有三个字母的文件扩展名,用于指示文件类型(例如,图片文件常常以 JPEG 格式保存并且文件扩展名为 .jpg)

所以linux 系统又中有哪些类型文件呢?Linux将文件分为7

名称属性内容
普通文件-Linux中最多的一种文件类型, 常规普通文件。
目录文件d绝对路径:从根目录开始直到指定文件位置,例如:user用户下的test.conf文件路径为/home/user/test.conf
相对路径:当前所在目录的文件到指定文件位置,例如:user用户下的test.conf文件./test.conf ,在这了“.”相当于/home/user
另:“.”相当于当前目录
  “..”则为上一级目录
  “~”或者“~+”当前用户的家目录、“~username”username用户的家目录
  “-”或者“~-”相对当前操作的上一次操作的目录

块设备文件、字符设备文件、套接字文件、管道文件、链接文件,待后期知识扩充后继续补全。

2w.ho (谁的文件)

这里关于文件归属,属于权限问题
Linux 系统的用户与用户组管理学习总结
linux权限管理

3w.here(文件在哪里)

文件应在哪里?Linux:FHS标准 给出了答案
FHS(英文:Filesystem Hierarchy Standard 中文:文件系统层次结构标准)
文件的分布结构是一个倒置的树型结构,所以最主要的是‘/’根目录,以‘/’根目录为基础向下分类文件
在这里插入图片描述

名称作用
/根目录
/bin一般用户使用的命令
/boot存储了计算机启动所需的所有东西
/dev所有的设备文件都放在这个目录
/etc存放了系统的所有配置文件
/home除了root用户外的其他用户的个人文件所在的位置
/lib系统使用到的库存放目录
/media挂接USB、CD-ROM等设备的挂载目录,系统自动挂在时使用的
/mnt临时文件的挂点,通常是用户挂载使用
/opt存放应用程序的目录
/rootroot用户的家目录
/sbin系统管理所需要的命令
/tmp临时文件目录
/usr存放系统上大多数程序的二进制文件
/var存放变量文件,系统运行时变化的文件

4w.hen(文件时间)

(what)关于文件的时间,Linux系统定义3项时间指标给文件属性:

名称全称中文定义解释
atimeaccess time访问时间文件中的数据在最后被访问的时间
mtimemodify time修改时间文件内容被修改的最后时间
ctimechange time改变时间文件的权限,所有者等属性发生变化

(when)文件时间何时会被修改

发生情况atimemtimectime备注
当读取文件时改变不改变不改变读取文件仅是访问了文件所以访问时间被修改
当修改文件时改变改变改变修改文件时候要先访问,才能修改内容,修改结束后,文件属性也被改变,所以3项时间均被使用修改
当修改属性时不改变不改变改变属性修改仅针对改变时间,其他项不会参与

(how)如何操作文件时间
1.查时间

命令 stat
stat [选项]… 文件…

[root@localhost Desktop]# stat 1
  File: ‘1’
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: fd00h/64768d	Inode: 27465764    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2019-09-25 09:05:01.469427240 -0400
Modify: 2019-09-25 09:05:01.469427240 -0400
Change: 2019-09-25 09:05:01.469427240 -0400
 Birth: -

命令 ls
ls [选项]… [文件]…
ls -lu 文件... 列出文件atime
s -l 文件...列出文件mtime
ls -lc 文件...列出文件ctime

2.改时间

发生情况操作命令
当读取文件时tuochcattaclessheadtail
当修改文件时vi\vim
当修改属性时需续补内容

5w.hich(文件和什么有关)

文件与硬件设备关联的问题,后期学习扩展总结,先标记

1h.ow(如何操作文件)

重头戏如何操作文件,由于Linux操作命令很多,在这里将操作命令以增、删、改、查进行分类区分总结
另此处仅针对普通文件、目录文件操作命令总结,其他内容在在之后学习,再补充修改

分类操作文件类型命令
全类型cp
~普通文件touchvi\vim
~目录文件mkdir
全类型rm
全类型vi\vimtouchmv
普通文件cattaclessheadtail
~目录文件pwdlscd

cp命令 (复制文件与目录)

cp file1 file2 file3 ... directory 
#把file1、file2、file3 三个文件复制directory文件夹中
cp file test
#创建新的命名为test的文件,且模板为file
cp -r directory directory1             
#复制directory目录下全部内容到directory1中

touch命令(建立新文件、修改文件时间)

touch filename
#1.当filename文件不存在时,建立一个名为filename的文件
#2.当filename文件或者文件夹存在时,修改其atime

vi\vim命令
vim本身是一款文本编辑器

vi filename
#建立一个名为filename的文件
:wq
#保存退出,就可以生成文件了

mkdir命令(创建目录)

mkdir name
#当前目录下建立一个名为name的文件夹
mkdir -p或--parents name/name1
#在当前目录下建立一个名为name的文件夹,并在name中在建立一个name1文件夹

rm命令(删除)

rm -f filename
#删除名为filename的文件
rm -r name
#删除名为name的文件夹同时删除其中的所有内容

mv命令(移动和重命名文件)

mv file1 file2 directory
#移动file1、file2文件到directory文件夹中
mv file1(存在) file2(不存)
#将file1文件重命名为file2文件
mv dir/file . 
#把dir文件夹中的file文件移动到当前目录

cat命令(连接文件并将其输出在标准输出设备上)

cat 
cat filename
#连接filname文件并打印到显示器上
cat -n或-number fliename
#以1开始对filenmae内容所有输出的行数编号;
cat -b或--number-nonblank filename
#和-n相似,只不过对于空白行不编号;
cat -s或--squeeze-blank
#当遇到有连续两行以上的空白行,就代换为一行的空白行;

tac命令(与cat一样,只是反序输出)

less命令(浏览文件内容)
文件内容过多,1页无法完全显示时使用
上下键:上下移动一行
空格键:滚动一页
回车键:滚动一行
[pagedown][pageup]: 向上\下翻动一页
/字符串?字符串:向下\上搜索"字符串"

head\tail命令(显示文件的开头\尾部的内容)

head -n 【num】 文件名
#查看文件内容的前num行,num为数字
#默认在不输入-n 【num】时,输出10行内容
tail -n 【num】 文件名
##查看文件内容的后num行,num为数字
#默认在不输入-n 【num】时,输出10行内容

pwd命令(显示当前目录路径)

[root@localhost Desktop]# pwd
/root/Desktop

ls命令(列出目录或文件信息)

ls -a                       
#显示当前目录中的所有内容,包括以“.”开头的隐藏文件
ls -l
#显示当前目录中的所有内容,并显示其属性

cd命令(改变目录命令)

cd /root/Desktop
#切换到指定的desktop目录
cd -
#切换到上一个使用的工作目录
cd ~
#切换到当前用户的家目录
cd ~username
#切换到指定用户的家目录
cd ..
#进入到当前目录的上级目录

关于多文件创建、访问使用的正则表达式

符号意义
*匹配0到任意个数字符
匹配1个字符
[[:alpha:]]匹配1个任意字母
[[:lower:]]匹配1个任意小写字母
[[:upper:]]匹配1个任意大写字母
[[:alnum:]]匹配1个任意数字
[[:punct:]]匹配1个任意字符
[[:space:]]匹配1个空格
{}匹配{}内全部内容,例如
{1,3,5}必须含有1或者3或5
{1…5}必须含有1到5,全部数字
当然内容可以时数字、字母{a,b,c}{a…f}、字符{~,@,#}
[]匹配[]内任意内容
[135]含有1或者3或5,任意一个
[1-5]含有1到5全部数字的其中任意一个数字即可
当然内容可以是数字、字母[abc][a-f]、字符[!@#]
!或^表示匹配取反
例如:[!abc]表示除了abc
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值