Linux入门 ——文件和目录操作


Linux 文件和目录操作

Linux入门 ------文件和目录操作

目录:Linux 文件和目录操作shell命令常用简单快捷键root下目录结构用户目录目录操作文件操作关于linux中软链接和硬链接文件或目录属性文件权限, 用户, 用户组文件的查找

教学基于centos 7, Hi, 我是沙漏,不定期更新python爬虫,其余时间学习java和linux中。关注我哟!

shell命令

shell命令 – 能够被终端识别并且去做出相对于的操作的命令

常用简单快捷键

date 查看时间

历史命令切换

history 查看历史命令记录
ctrl + p 从当前往历史命令回溯 – 向上遍历
ctrl + n 从当前往历史命令下掉 – 向下遍历

光标移动 以靠近命令开端为后 远离命令开端为前

ctrl + b 光标向后一格
ctrl + f 光标向前一格
ctrl + a 光标跳转开头
ctrl + e 光标跳转末尾
ctrl + h 删除光标后面元素
ctrl + d 删除光标前面元素
ctrl + u 删除光标后面所有元素

自动补齐命令: Tab 可以帮助显示命令 也包括文件路径提示

目录的遍历

ls 遍历目录 后面可接待遍历路径 例如 ls / 表示遍历根节点
ls 也可以后加参数 比如 ls -a 表示全部文件包括隐藏文件
ls 也可以加其他的 比如ls – l 查看隐藏文件和时间轴
ls 也可以加多个参数 比如 ls -al 二个功能都有

查看当前工作地点 pwd 或者看前缀提示

工作地点的切换 cd /

cd /home 是直接指明了访问目录的直接路径

cd home 是没有指明直接路径,但隐藏的路径是当前目录

cd\ 表示退出当前地点

切换到家目录三种方式:

使用绝对路径 cd root/
使用符号 cd ~
直接点 cd

清屏 clear

root下目录结构

目录名称 描述

/bin
bin是binary缩写,这个目录存放经常使用的命令

/boot
存放启动linux使用的核心文件
包括一些连接文件和镜像文件

/dev
dev是devicel(设备)的缩写, 存放linux的外部设备
在linux中访问设备的方式和访问文件方式相同

/ect
存放所有的系统管理所需要的配置文件和子目录

/home
用户的主目录,在linux中,每个用户都有自己的目录
一般该目录名以该用户名作为文件夹名称

/lib
存放系统最基本的动态连接共享库
起作用类似windows里面的DLL文件
几乎所有应用程序都需要用到这些共享库

/media
/mnt
linux系统自动识别一些外界设备,U盘或者其他光驱
linux将这些设备挂载在这个文件夹中
可以在该文件夹中查看外部设备的信息

/opt
存放主机额外安装软件的目录,比如安装一个oracle数据库

/root
/目录为系统管理员,也成为超级权限的用户主目录

/usr
主要目录,存放用户应用程序和文件,类似windows的progame files目录

用户目录

绝对路径: 从根目录开始写 /home/a

相对路径: 相对于当前的工作目录而言 比如直接 test.txt

其他表示符号

. 表示当前目录
… 当前的上一级目录
— 用于临近二个目录的切换 比如 cd –
~ 用户的家目录 (宿主目录)
#: 超级用户 –root
$: 普通用户

可以使用tree命令行 as: tree -FC 来展示当前树节点

文件目录颜色区分

白色 一般为普通文件
蓝色 一般表示为目录
绿色 一般表示为可执行文件
红色 一般表示为压缩文件
青色 一般表示为链接文件
黄色 一般表示设备文件

block 块
char 字符
fifo 管道

灰色 一般表示为其他文件

这些描述都是在一般情况下, 可能存在特殊性,注意区分

目录操作

创建目录

直接创建 mkdir <目录名> as: mkdir app
复合创建 mkdir <外目录>/<子目录> -p as: mkdir app/game -p

删除目录

删除空目录 rmdir <空目录名> as mkdir app

删除非空目录 rm <非空目录> -ri as: rm app -ri

rm 删除了就很难找到
-r 表示递归删除方式
-i 表示带提示删除
-ri 表示删除带递归提示

拷贝目录

cp 命令 as: cp <源目录> <目标目录> -r (要加参数, 表示递归的复制)

eg: cp /root/app /root/newapp -r

如果目录不存在, 则直接拷贝目录 粘贴过去

如果目录存在 ,则会将源目录粘贴放在目标目录的根目录下面,类似如下

app 表示 源目录

newapp 表示目标目录

[root@localhost newapp]# tree -FC
.
├── app/
│ ├── hello
│ └── temp
├── hello
└── temp

1 directory, 4 files

重命名目录

mv 命令 mv <源目录> <目标目录> eg: mv hello aaa

移动目录

还是mv命令 mv <源目录> <目标路径目录> eg: mv aaa app

将aaa目录 移动到 app目录下

文件操作

创建文件 touch 命令 touch <文件名> as : touch helloword

如果文件不存在 则表示创建这个文件
如果文件存在 则修改文件最后登入时间

查看文件 cat 命令 cat <文件名> as : cat helloword

删除文件 rm <文件名> -i as: rm help -i

文件拷贝 cp 命令 cp <源文件> <目标文件>

as: cp hello temp 将hello文件 拷贝到 temp文件中
如果 temp 文件不存在, 则cp会自动创建这个文件,然后执行拷贝操作
如果temp文件存在 , 则 cp 会直接覆盖这个文件, 实现覆盖写操作

查看文件 【存在 五种命令 方式】

cat 命令 用于文件短小 直接查看 用法: cat <文件名> eg: cat hello

more 命令 用于文件较长 一次性打开大约百分之八十文件大小

eg: more hello
此时敲击回车 表示 显示下一行的文本
此时敲击空格 表示 显示下一页的文本
缺陷: 只能往下看 不能翻回去
使用 按键 q 和 ctrl + c 可以退出more命令
或者直接 ctrl + z 关闭命令

less 命令 用于文件一般 更加智能

eg: less hello
使用 ctrl + p 翻回去一页
使用ctrl + n 翻下去一页
关闭方式 和 more 是一样的

head 命令 用于从头部查看文本

eg: head hello
默认查看十行 , 可以加参数
eg: head – 20 hello
表示从头部查看前20行文本

tail 命令 用于从尾部查看文本

用法与head一个样, 不多做解释!

重命名文件

mv 命令 mv <源文件> <目标文件> eg: mv hello aaa

newapp: –> app hello temp

[root@localhost newapp]# mv temp aaa
[root@localhost newapp]# ls
aaa app hello

移动文件

还是mv命令 mv <源文件> <目标路径文件> eg: mv aaa app

将aaa文件 移动到 app目录下

关于linux中软链接和硬链接

在linux中, 存在硬链接 和 软链接 二种方式, 作用都是创建一个新的打开方式, 类似windows中的外部链接, 或者 超链接之类的东西,简单了解一下就行!

软链接: ln -s <目标文件> <链接文件>

eg: ln -s hello hello1 (hello1为软链接文件)

硬链接: ln <目标文件> <链接文件>

eg: ln hello hello1 (hello1为硬链接文件)

原理上,硬链接和源文件的inode节点号相同,两者互为硬链接。软链接和源文件的inode节点号不同,进而指向的block也不同,软链接block中存放了源文件的路径名。

实际上,硬链接和源文件是同一份文件,而软链接是独立的文件,类似于快捷方式,存储着源文件的位置信息便于指向。

使用限制上,不能对目录创建硬链接,不能对不同文件系统创建硬链接,不能对不存在的文件创建硬链接;但是可以对目录创建软链接,可以跨文件系统创建软链接,可以对不存在的文件创建软链接。

二种链接方式各有各的特点:

硬链接的特点:

具有相同inode节点号的多个文件互为硬链接文件;
删除硬链接文件或者删除源文件任意之一,文件实体并未被删除;
只有删除了源文件和所有对应的硬链接文件,文件实体才会被删除;
硬链接文件是文件的另一个入口;
可以通过给文件设置硬链接文件来防止重要文件被误删;
可以通过ls -i看到Index;
硬链接文件是普通文件,可以用rm删除;
对于静态文件(没有进程正在调用),当硬链接数为0时文件就被删除。注意:如果有进程正在调用,则无法删除或者即使文件名被删除但空间不会释放。

软链接的特点:

软链接类似windows系统的快捷方式;
软链接里面存放的是源文件的路径,指向源文件;
删除源文件,软链接依然存在,但无法访问源文件内容;
软链接失效时一般是白字红底闪烁;
创建软链接命令 ln -s 源文件 软链接文件;
软链接和源文件是不同的文件,文件类型也不同,inode号也不同;
软链接的文件类型是“l”,可以用rm删除。

文件或目录属性

这个作为理解内容, 稍微了解一下就行了。

wc 命令: 简单查看文本文件的基础信息

用法: wc <文本文件名>

[root@localhost newapp]# wc hello
1 2 12 hello

[root@localhost newapp]# cat hello
hello world

wc 会显示如下:

【文件行数】 【文件字符个数】 【字节个数】 【文件名】

od命令: 简单查看二进制文件的基础信息

用法: od <二进制文件名> – <参数>
eg: od hello -c 表示显示ascii字符
参数:

c –> ascii字符
d –> 有符号十进制数
f –> 浮点数
o -> 八进制数
u -> 无符号十进制数
x -> 十六进制数

du 命令: 查看某个目录的大小

用法: du -h (加入参数h 提示更多)
eg: du app -h

df命令: 查看磁盘的使用情况

用法: df -h (加入参数 h 提示更多)
eg: df -h

which 命令: 用于查看 查看shell命令的位置 (外部命令)

eg: which cp

文件权限, 用户, 用户组

查看当前用户:

直接从终端阅读
whoami 命令

修改用户权限:

文字设定法: chmod [who] [+ – =] 【mode】 [文件名]

eg: chomd o+w hello.c
[who]

文件所有者 u
文件所属组 g
其他人 o
所有的人 a

[权限添加]

添加权限 +
减少权限 –
覆盖权限 =

[mode]

读 r
写 w
执行 x

数字设定法: chmod [数字串] [mode]

eg: chomd 765 hello.c
【权限表示】

没有权限 –
读 r 4
写 w 2
执行 x 1

解释 765

7 — 文件所有者 —rwx—
6 –-文件所属组 —rw—-
5 —其他人 — —rx—

减少权限 可以使用 – [数字串] 实现对应的权限降低
eg: chmod -001 hello.c
然后其他人的权限就编程了 —r—

修改文件所有者/所有组

所有者: chown

示例:
chown root /u 将 /u 的所有者更改为”root”。
chown root:staff /u 和上面类似,但同时也将其属组更改为”staff”。
chown -hR root /u 将 /u 及其子目录下所有文件的所有者更改为”root”。

所有组: chgrp

示例:
chgrp staff /u 将 /u 的属组更改为”staff”。
chgrp -hR staff /u 将 /u 及其子目录下所有文件的属组更改为”staff”。

文件的查找

文件的查找有很多种, 我们逐个讲解。

按文件名查找:

命令: find 路径【可选,默认为当前路径】 -name “文件名”

文件名中可以使用通配符
其中 * 表示前面一个或多个
其中 ? 表示非贪婪模式
eg: find - name “he*?” return /root/app/hello.c

按文件大小查找:

命令: find 路径[可选,默认为当前路径] -size +10k

其中 + 表示 大于 或者 – 表示小于
其中 10 表示 文件大小
其中 k 表示 kb 或者 M 兆
范围查找 “ find -size +10k -size -100k`
表示 查找 大于 10k 小于 100k 的全部文件

按文件类型查找:

命令: find 路径[可选, 默认为当前路径] =type f

其中 f 表示文件类型
f 表示普通文件
d表示目录
l 表示链接符号
b 表示块设备
c 表示字符设备
s表示socket文件
p表示管道
eg:find newapp/ -type f 查找newapp目录下的 普通文件

按文件内容查找:

命令: grep -r “查找的内容” 【查找的路径】

其中 查找内容 可以使用通配符 与文件名查找类似

关注博主即可阅读全文


原创:https://www.panoramacn.com
源码网提供WordPress源码,帝国CMS源码discuz源码,微信小程序,小说源码,杰奇源码,thinkphp源码,ecshop模板源码,微擎模板源码,dede源码,织梦源码等。

专业搭建小说网站,小说程序,杰奇系列,微信小说系列,app系列小说

Linux入门 ------文件和目录操作

免责声明,若由于商用引起版权纠纷,一切责任均由使用者承担。

您必须遵守我们的协议,如果您下载了该资源行为将被视为对《免责声明》全部内容的认可-> 联系客服 投诉资源
www.panoramacn.com资源全部来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。 敬请谅解! 侵权删帖/违法举报/投稿等事物联系邮箱:2640602276@qq.com
未经允许不得转载:书荒源码源码网每日更新网站源码模板! » Linux入门 ——文件和目录操作
关注我们小说电影免费看
关注我们,获取更多的全网素材资源,有趣有料!
120000+人已关注
分享到:
赞(0) 打赏

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

您的打赏就是我分享的动力!

支付宝扫一扫打赏

微信扫一扫打赏