Linux命令之查看文件和权限修改操作

news2025/1/20 1:43:21

目录

查看文件

1. cat --- 将文件中的内容打印在输出设备

2. more --- 分页显示文件内容

3.less ---查看文件内容

4. head -- 查看文件前n行内容

5.tail -- 查看指定文件的后n行内容或实时监测文件

6. wc -- 可计算文件的字节数、字数和列数

文件搜索

1.which --- 获取指定命令的绝对路径

2.find -- 借助搜索关键字查找文件或目录

3.locate -- 借助搜索关键字查找文件或目录

4.grep -- 过滤

权限管理

1.chmod -- 变更文件或目录的权限

2.chown ---更改文件或目录的所有者

3.chgrp --- 更改文件或目录的所属组


查看文件

1. cat --- 将文件中的内容打印在输出设备

命令格式如下:

cat  文件名

[root@localhost  ~]$ cat  /etc/passwd     #打印etc目录下的passwd文件中的内容

2. more --- 分页显示文件内容

命令格式如下:

more  [文件名]

在使用此命令分页显示文件内容时,可使用快捷键进行翻页,如下:

选项说明
f/Space显示下一页
Enter显示下一行
q/Q退出

3.less ---查看文件内容

使用more只能向下翻页,若想实现向前翻页的功能,应使用less命令查看文件内容。可使用PageUp键向上翻页,PageDown键向下翻页,使用Q键退出分页显示。

[itheima@localhost  ~]$ less  /etc/passwd    #分页显示etc目录下的passwd文件中的内容

4. head -- 查看文件前n行内容

命令格式如下:

head  -n  filename

n 为要查看的行数,filename为待查看文件的文件名。

用法示例:

#查看etc目录下passwd文件的前3行内容

[itheima@localhost  ~]$  head  -3  /etc/passwd

5.tail -- 查看指定文件的后n行内容或实时监测文件

命令格式如下:

tail  -n  filename

n 为要查看的行数,filename为待查看文件的文件名。

选项说明
-n指定要显示的行数
-c指定要显示的特定字节数
-f监视文件的更改

用法示例:

#查看etc目录下passwd文件的后3行内容

[itheima@localhost  ~]$  tail  -3  /etc/passwd

# 实时监测passwd文件的变化

[itheima@localhost  ~]$  tail  -f  /etc/passwd

6. wc -- 可计算文件的字节数、字数和列数

命令格式如下:

wc  [选项]  参数

选项说明
-c统计指定文件中文本的字节数
-l统计指定文件中文本的行数
-w统计指定文件中文本的字数

wc命令参数一般是文件名,若不指定文件名,或文件名为“-” ,则wc命令会从标准输入设备读取数据。

# 统计passwd文件的行数

[itheima@localhost  ~]$  wc  -l  /etc/passwd    

文件搜索

文件搜索命令可根据文件名或关键字,搜索文件所在路径,或搜索包含指定关键字的内容。

1.which --- 获取指定命令的绝对路径

Linux命令以文件的形式存储在系统中;which命令的格式如下:

which  命令

# 搜索ls命令的所在路径

[itheima@localhost  ~]$  which  ls

2.find -- 借助搜索关键字查找文件或目录

命令格式如下:

find  [搜索路径]  [选项]  搜索关键字

若不指定搜索路径,则默认在当前路径下搜索。

若当前路径下存在目录,则会进入目录中逐级搜索。

find命令使用的搜索关键字可以是文件名、文件大小、文件所有者等。

常用选项:

选项说明
-name根据文件名查找
-size根据文件大小查找
-user根据文件所有者查找

用法示例如下:

选项说明
-name根据文件名查找
-size根据文件大小查找
-user根据文件所有者查找
-group根据文件所属组查找

.  代表当前目录

* 支持* 通配符做模糊查询

# 按文件名passwd在etc目录下进行搜索

[itheima@localhost  ~]# find  /ect  -name  passwd

3.locate -- 借助搜索关键字查找文件或目录

命令格式如下:

locate  [选项]  搜索关键字

locate命令的搜索效率相当高,因为搜索的是一个包含本地文件信息的数据库而非具体的目录,这个数据库名为locatedb,由Linux系统自动创建,存储在/var/lib目录中,若不额外指定,locate命令默认搜索这个数据库,用户也可通过-d选项指定搜索路径。

用法示例如下:

# 搜索etc目录下所有以pas开头的文件

[itheima@localhost  ~]# locate /ect/pas

有时使用locate搜索的结果并不理想,因为Linux系统默认一天更新一次locatedb数据库,所以locate命令查不到最新变动的文件。为了避免这种情况,可在使用locate 命令之前通过updatedb命令手动更新数据库。

4.grep -- 过滤

基础功能为:在文件中搜索与指定字符串匹配的行并打印到终端。

命令格式如下:

grep  [选项]  指定字符  源文件

选项说明
-c统计文本中与指定字符串匹配的行数
-E使用扩展正则表达式进行匹配
-i不区分大小写
-n 在显示符合范本样式的那一列之前,标示出该列的编号。

用法示例:

在关键字前面加 ^ 号,表示搜索以关键字开头的行

# 查找/etc/passwd文件中以root开头的行

[itheima@localhost  ~]#  grep "^root"   /etc/passwd    

权限管理

文件管理命令中的权限指用户对文件的权限。

权限说明
权限对应字符文件目录
读权限r可查看文件内容可以列出目录中的内容
写权限w可修改文件内容可以在目录中创建、删除文件
执行文件x可执行该文件可以进入目录

Linux系统中任何文件的属性信息都与以上信息的格式相同。属性信息由空格分隔,其中第一个字段 “-rw-rw-r--” 包含10个字符,第一个字符 “-” 表示文件类型,若第一个字符为“d”,表示是目录;其余9个字符3位一组分为 “rw-”、“rw-”、“r--” 3组,分别表示文件所有者权限、同组用户权限和其他用户权限;每组中的3个字符又依次对应用户的读、写和执行权限。若对应权限为 “-”,则表示用户没有此权限。

常用的权限管理命令有chmod、chown、chgrp等,默认情况下,普通用户不能使用权限管理命令

1.chmod -- 变更文件或目录的权限

命令格式如下:

chmod  [选项]  [ {augo} {+-=} ]  [文件或目录]

以上格式的a为all,表示所有用户;u即user,表示用户名;g即group,表示组名;o即other,表示其它用户或其他用户组;

“+”表示添加权限

“-”表示取消权限

“=”表示设定权限

常用选项如下:

选项说明
-f不显示错误信息
-v显示指令执行过程
-R对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)
-c若该文件权限确实已经更改,才显示其更改动作

以目录dir为例,使用chmod命令为其添加权限的方式如下:

# 为目录 dir 添加权限,使目录所有者和同组用户都拥有执行权限
[root@localhost ~]# chmod  u+x,g+x  dir

除了上述方法外,还可使用数值形式表示权限。

不同的权限对应不同的数值:读权限对应的数值为4,写权限对应的数值为2,执行权限对应的数值为1。简单来说,若设置某个文件的权限为777,则表示所有用户对该文件或目录都有读权限、写权限和可执行权限。

以目录bxg为例,使用chmod命令以数值表示法为其添加权限的方式如下:

# 使用数值形式将目录bxg的权限设置为rwxr-xr- -
[root@localhost ~]# chmod 754 bxg

在管理权限时,若权限的变动较小,则可以使用字符方式进行设置;若权限的变动较大,多个对象的多项权限都要发生改变,则使用数值表示法进行设置更为方便。

2.chown ---更改文件或目录的所有者

默认情况下,文件的所有者为创建该文件的用户,或在文件被创建时通过命令指定的用户,但在
需要时,可使用chown对文件的所有者进行修改。该命令的格式如下:

chown [选项]  [用户]   [文件或目录]

选项说明
-f不显示错误信息
-v显示指令执行过程
-R递归处理,处理指定目录及其中所有文件与子目录

#更改目录bxg的所有者为itheima
[root@localhost ~]# chown  itheima  bxg

3.chgrp --- 更改文件或目录的所属组

chgrp命令的原意为change file group,用于更改文件或目录的所属组。一般情况下,文件或目录与创建该文件的用户属于同一组,或在被创建时通过选项指定所属组,但在需要时,可通过chgrp命令更改文件的所属组。chgrp 命令的格式如下:

chgrp  组名  文件或目录

chgrp命令的用法示例如下:

# 修改目录 bxg 的所属组为 itheima
[root@localhost ~]# chgap itheima bxg 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1224520.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Selenium——利用input标签上传文件

Selenium利用input标签上传文件 完整流程 打开文件上传页面选择要上传的文件点击上传按钮确认文件上传成功介绍怎么方便的获取对应元素的Xpath或者Css 简单介绍 在使用Selenium进行浏览器自动化测试时,文件上传是一个常见的需求。而 标签就是实现文件上传功能的…

Leetcode—206.反转链表【简单】

2023每日刷题(三十三) Leetcode—206.反转链表 头插法实现代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* reverseList(struct ListNode* head) {if(head NULL…

MySQL 的执行原理(一)

5.1 单表访问之索引合并 我们前边说过 MySQL 在一般情况下执行一个查询时最多只会用到单个二级 索引,但存在有特殊情况,在这些特殊情况下也可能在一个查询中使用到多个二 级索引,MySQL 中这种使用到多个索引来完成一次查询的执行方法称之为&…

UML统一建模语言

UML包含3种构造块:事物、关系、图。 事物:模型中代表性成分的抽象关系:把事物结合在一起图:聚集了相关的事物 事物 结构事务:模型的静态部分,包括类、接口、协作、用例、主动类、构件、制品、结点 行为事…

CAD长方形纤维插件2D

插件介绍 CAD长方形纤维插件2D版本可用于在AutoCAD软件内生成随机分布的长方形纤维图形,生成的dwg格式模型可用于模拟二维随机分布的纤维复合材料、随机初始裂缝等,同时模型可导入COMSOL、Abaqus、ANSYS、Fluent等有限元软件内进行仿真分析计算。 插件…

torch.stack

看网上看多没讲的不是很明白,我来试试空间上的理解 # 假设是时间步T1的输出 T1 torch.tensor([[1, 2, 3],[4, 5, 6],[7, 8, 9]]) # 假设是时间步T2的输出 T2 torch.tensor([[10, 20, 30],[40, 50, 60],[70, 80, 90]])输出: print(torch.stack((T1,T2…

解决/usr/lib/libstdc++.so.6: version `GLIBCXX_3.x.x‘ not found问题

目录 1、查找缺少库版本2、动态库版本与gcc版本对应关系3、查找 libstdc.so.6.0.x 库文件4、如果libstdc.so.6.0.21库文件已存在,则按照下面的步骤创建软链接即可4.1 拷贝、软连接4.2验证新的 libstdc.so.6.0.21 库文件是否生效 5、如果libstdc.so.6.0.21库文件不存…

在做题中学习(30):字符串相加

思路: 相加时要转换成对应的数字,所以让字符数字-0 如‘9’-‘0’(ASCII)57-489 9110,会进1,把进位保存起来,只取0头插到新串里。 头插时要转换对应字符数字,所以让对应的数字‘…

【LeetCode刷题-双指针】--977.有序数组的平方

977.有序数组的平方 方法:双指针 由于数组是升序排序的,如果所有的数都是非负的,那么数组平方后,仍然保持升序,但数组中有负数,将每个数平方后,数组就会降序 需要找到数组中负数与非负数的分界…

车载开发岗位如何?Android程序员是否转行

这几年的大环境让大家都过的不安逸;社会动荡与就业问题一直困扰了不少人。在大家都认为的高薪工作程序员行业中,现在也是费力不讨好裁员风潮大部分指向互联网。 我们Android开发基本上已经感受很久了,就这就业问题很难存活。对此我们的目光都…

【LeetCode刷题-双指针】--360.有序转化数组

360.有序转化数组 方法&#xff1a;双指针 从两头计算&#xff0c;保存两端较小的值&#xff0c;高中抛物线知识&#xff0c;a>0&#xff0c;向上的抛物线&#xff0c;两端大中间小&#xff0c;从后往前存储计算结果&#xff1b;a<0&#xff0c;向下的抛物线&#xff0c…

深度模型压缩研究回顾

深度模型压缩研究回顾 作者&#xff1a;安静到无声 个人主页 目录 深度模型压缩研究回顾推荐专栏 在本节中&#xff0c;主要介绍了目前主流的深度神经网络压缩与加速方法&#xff0c;主要包括轻量化网络设计、参数量化、知识蒸馏、模型剪枝和硬件加速等&#xff0c;其中模型剪…

【开源】基于Vue.js的音乐偏好度推荐系统的设计和实现

项目编号&#xff1a; S 012 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S012&#xff0c;文末获取源码。} 项目编号&#xff1a;S012&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、系统设计2.1 功能模块设计2.1.1 音乐档案模块2.1…

综述:目标检测二十年(机翻版)(未完

原文地址 20年来的目标检测&#xff1a;一项调查 摘要关键词一 介绍二 目标检测二十年A.一个目标检测的路线图1)里程碑&#xff1a;传统探测器Viola Jones探测器HOG检测器基于可变形零件的模型&#xff08;DPM&#xff09; 2)里程碑&#xff1a;基于CNN的两阶段探测器RCNNSPPN…

蓝桥杯 枚举

例题讲解 特别数的和 #include<iostream> using namespace std; bool ifspecial(int n){while(n){if(n%100||n%101||n%102||n%109){return true;} n/10;}return false; } int main(){int n;cin>>n;int sum0;for(int i1;i<n;i){if(ifspecial(i)){sumi;}}cout&l…

Spring Boot中配置文件生效位置

1. 配置文件位置 首先小伙伴们要明白&#xff0c;Spring Boot 默认加载的配置文件是 application.properties 或者 application.yaml&#xff0c;properties优先级高于yaml。默认的加载位置一共有五个&#xff0c;五个位置可以分为两类&#xff1a; 从 classpath 下加载&…

Redis面经

Redis使用场景 1、缓存&#xff1a; 缓存三兄弟(穿透、击穿、雪崩) 、双写一致、持久化、数据过期策略&#xff0c;数据淘汰策略 2、分布式锁 setnx、redisson 3、消息队列 4、延迟队列 何种数据类型&#xff08;list、zset&#xff09; 缓存三兄弟 缓存穿透 缓存穿透…

【LeetCode刷题-滑动窗口】-- 239.滑动窗口最大值

239.滑动窗口最大值 分析&#xff1a; 方法&#xff1a;优先队列 对于最大值&#xff0c;可以使用优先队列(堆)&#xff0c;其中的大根堆可以帮助实时维护一系列元素中的最大值 在本题中&#xff0c;初始时&#xff0c;将数组nums的前k个元素放入优先队列中&#xff0c;每当我…

首发|PS 2024 正式版来袭,内置AI神经滤镜,支持Win/Mac

前言 Photoshop 2024应用程序发布了生成式AI绘图&#xff0c;这是世界上第一个创意和设计工作流程的软件&#xff0c;为用户提供了一种神奇的新工作方式。生成式AI绘图由Adobe Firefly提供支持&#xff0c;Adobe的创意生成AI模型系列。 正文简介 Photoshop 2024正式版 支持…