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

目录

查看文件

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.hqwc.cn/news/191738.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

柯桥会计培训|中级会计职称,考过中级,可以从事哪些工作?

拿下中级会计证书后,可以从事哪些工作呢?一起来看看吧~ 财务经理 财务经理可以说是会计人梦寐以求的岗位,上可以和老板畅聊公司财务情况,下可以管理整个财务部。但是在财务管理水平日益成为企业核心竞争力的今天,企业…

各类软件docker安装

docker Docker 要求 CentOS 系统的内核版本高于 3.10 ,通过 uname -r 命令查看你当前的内核版本: uname -r 3.10.0-1062.1.2.el7.x86_64 安装 Docker: 安装 Docker:yum -y install dockerkafka和zookeeper docker pull wurstmei…

蓝桥杯 枚举

例题讲解 特别数的和 #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…

在Go编程中调用外部命令的几种场景

1.摘要 在很多场合, 使用Go语言需要调用外部命令来完成一些特定的任务, 例如: 使用Go语言调用Linux命令来获取执行的结果,又或者调用第三方程序执行来完成额外的任务。在go的标准库中, 专门提供了os/exec包来对调用外部程序提供支持, 本文将对调用外部命令的几种使用方法进行总…

物联网AI MicroPython学习之语法 SPI串行外设通信

学物联网&#xff0c;来万物简单IoT物联网&#xff01;&#xff01; SPI 介绍 模块功能: SPI串行外设驱动 接口说明 SPI - 构建SPI对象 函数原型&#xff1a;SPI(id, baudrate&#xff0c;polarity, phase&#xff0c;sck, mosi, miso)参数说明&#xff1a; 参数类型必选参…

django理解02 前后端分离中的问题

前后端分离相对于传统方式的问题 前后端数据交换的问题跨域问题 页面js往自身程序&#xff08;django服务&#xff09;发送请求&#xff0c;这是浏览器默认接受响应 而请求其它地方是浏览器认为存在潜在危险。自动隔离请求&#xff01;&#xff01;&#xff01; 跨域问题的解决…

【MATLAB】史上最全的5种数据插值算法全家桶

有意向获取代码&#xff0c;请转文末观看代码获取方式~ 大家吃一顿火锅的价格便可以拥有5种数据插值算法&#xff0c;绝对不亏&#xff0c;知识付费是现今时代的趋势&#xff0c;而且都是我精心制作的教程&#xff0c;有问题可随时反馈~也可单独获取某一算法的代码&#xff08…

Visio是什么软件,有哪些好用的Visio平替软件推荐?

1. 什么是Visio&#xff1f; Visio是一款由微软开发的流程图和矢量绘图软件&#xff0c;它可以帮助用户创建各种类型的图表、图示和流程图&#xff0c;从而更好地呈现和传达信息。Visio的功能强大&#xff0c;适用于各种领域&#xff0c;如项目管理、系统设计、流程优化等。…

Redis面经

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

从算法到应用:直播美颜滤镜SDK的全面解读与评测

直播美颜滤镜SDK技术逐渐成为直播平台不可或缺的一环。本文将对直播美颜滤镜SDK进行全面解读&#xff0c;深入探讨其算法原理和应用效果&#xff0c;并通过评测分析展现其在直播领域的实际价值。 一、算法原理解读 直播美颜滤镜的背后是复杂而精密的算法&#xff0c;旨在提升…

【RH850芯片】RH850U2A芯片平台Spinlock的底层实现

目录 前言 正文 1.RH850U2A上的原子操作 1.1 Link 1.2 Link generation 1.3 Success in storing 1.4 Failure in storing 1.5 Condition for successful storing 1.6 Loss of the link 1.7 示例代码 2.Spinlock代码分析 2.1 尝试获取Spinlock 2.2 释放Spinlock …

Unity 6 是下一个 LTS 版本即将发布

Unity 公司宣布&#xff0c;即将发布 Unity 6&#xff0c;并表示其为下一个长期支持版本 (LTS)。 Unity 在大会上演示了全新的 Unity 6引擎&#xff0c;并通过 Syncy Studios 采用 Unity 6 制作的《幻想王国&#xff08;Fantasy Kingdom&#xff09;》Demo 进行了演示&#xff…