Linux——/etc/passwd文件含义,grep,cut

news2024/11/23 3:02:08

/etc/passwd文件含义

 作用

- 记录用户账户信息:共分为7段,使用冒号分割

含义

- 文件内容意义:账户名:密码代号x:UID:GID:注释:家目录:SHELL

- 第7列/sbin/nologin:不允许登录

#### 示例

```shell

# 在passwd中检索包含root的行信息

[root@server ~]# grep   -n  “root”   /etc/passwd

# 在passwd检索不能登录的信息

[root@server ~]# grep  -n   "/sbin/nologin"   /etc/passwd

# 在passwd中检索可以登录的账户信息

[root@server ~]# grep  -nv   "/sbin/nologin"   /etc/passwd (反向)

# 检索包含“halt”的行及下3行信息

[root@server ~]# grep  -nA3  "halt"  /etc/passwd

# 检索包含“sshd”的行及上5行信息

[root@server ~]# grep  -nB5   “sshd”  /etc/passwd

# 检索包含“ftp”的行及上下2行

[root@server ~]# grep   -nC2   “ftp”   /etc/passwd

# 检索不能登录的账户个数

[root@server ~]# grep   -c   “/sbin/nologin”  /etc/passwd  

# 相当于 grep  -n  “/sbin/nologin”  /etc/passwd | wc  -l

# 检索包含大小写字母d的行信息

[root@server ~]# grep  -ni  "d"  /etc/passwd

```

#### 使用特殊符号匹配

 匹配模式                            说明                                    

  

 grep  h  文件名                查找文件里有字符h的行                   

 grep  ^[q]  文件名            匹配以q开始的行                         

 grep  ^[qf]  文件名           匹配以q或者f开头的行                    

 grep  ^[ ^qf ]  文件名       不匹配以q或者f开头的行                  

 grep ^[0-9]  文件名         匹配以数字开头的行                      

 grep  q$  文件名             匹配以q结束的行                         

 grep  ^$                          过滤空白行                              

 grep  -r  h  ./*                  如果要明确搜索当前目录中的子目录有h的行 

 grep  -d s kip  h  ./*        忽略当前目录下的子目录下的普通文件      

bash

[root@server ~]# grep  ^a /etc/passwd

[root@server ~]# grep  -n  “^root” /etc/passwd

[root@server ~]# grep  -n  "^#"  /etc/sos/sos.conf          找注释行

[root@server ~]# grep  -n  [0-9]$  /etc/sos/sos.conf

[root@server ~]# grep  -n  ^$  /etc/sos/sos.conf

 切割显示-cut

 作用

- cut命令用于按列提取文本内容

格式

```bash

cut  -d  "分隔符"  -f列数字  文件名

```

### 示例

- /etc/passwd文件在保存用户数据信息时,每一项值之间是采用冒号来间隔的,如:

```bash

[root@server ~]# head  2 /etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

```

- 基于“行”的方式来提取数据是比较简单的,只需要设置好要搜索的关键词即可,但如果按列搜索,不仅要使用-f参数来设置需要看的列数,还需要使用-d参数来设置间隔符号。

```shell

[root@kongd ~]# cut -d : -f1 /etc/passwd

root

bin

daemon

adm

lp

```

- 例:提取内核版本号

```bash

[root@server ~]# uname -a | cut -d " " -f3

```

- 例:提取IP地址

```bash

[root@server ~]# ip a | grep ens160 | grep inet | cut -d "/" -f1 | cut -d " " -f6

# 注意空格

```

- 例:提取mac地址

```bash

[root@server ~]# ip a | grep link/ether | cut -d " " -f6

```

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

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

相关文章

sheng的学习笔记-AI-聚类(Clustering)

ai目录 sheng的学习笔记-AI目录-CSDN博客 基础知识 什么是聚类 在“无监督学习”(unsupervised learning)中,训练样本的标记信息是未知的,目标是通过对无标记训练样本的学习来揭示数据的内在性质及规律,为进一步的数据分析提供基础。此类学…

WAIC2024 | 华院计算邀您共赴2024年世界人工智能大会,见证未来科技革新

在智能时代的浪潮汹涌澎湃之际,算法已成为推动社会进步的核心力量。作为中国认知智能技术的领军企业,华院计算在人工智能的广阔天地中,不断探索、创新,致力于将算法的潜力发挥到极致。在过去的时日里,华院计算不断探索…

昇思25天学习打卡营第7天|模型训练

模型训练 模型训练一般分为四个步骤: 构建数据集。定义神经网络模型。定义超参、损失函数及优化器。输入数据集进行训练与评估。 前面几天依次学习了前面几个步骤的操作,今天继续学习模型训练。 数据集和神经网络模型这个前面已经有详细的介绍。准确…

力扣SQL50 连续出现的数字 distinct

Problem: 180. 连续出现的数字 👨‍🏫 力扣官解 Code SELECT DISTINCTl1.Num AS ConsecutiveNums FROMLogs l1,Logs l2,Logs l3 WHEREl1.Id l2.Id - 1AND l2.Id l3.Id - 1AND l1.Num l2.NumAND l2.Num l3.Num ;

线程安全问题(二)——死锁

死锁 前言可重入锁逻辑 两个线程两把锁(死锁)死锁的特点多个线程多把锁(哲学家就餐问题)总结 前言 在前面的文章中,介绍了锁的基本使用方式——锁 在上一篇文章中,通过synchronized关键字进行加锁操作&am…

只需10分钟1条,全是原创精美视频,拆分8个步骤详细讲解!

不少朋友在问如何快速学习剪辑视频,网上还有很多在收几百到几千学费。其实所有的付费,都是认知与信息差。 这篇文章我直接讲干货,内容不多,大概3分钟可以看完。所有步骤都是富哥亲测的内容,每条视频长达1分钟以上&…

检索增强生成RAG系列4--RAG优化之问题优化

在系列2的章节中罗列了对RAG准确度的几个重要关键点,主要包括2方面,这一章就针对其中问题优化来做详细的讲解以及其解决方案。 从系列2中,我们知道初始的问题可能对于查询结果不是很好,可能是因为问题表达模糊、语义与文档不一致等…

职场必备:三大神器助你完美驾驭工作与生活;从 GTD 到SMART再到OKR:提升效率的终极指南;告别拖延,高效工作的秘密武器!

在现代职场和个人生活中,有效的时间管理和目标设定是成功的关键。我们每天都面临着无数的任务和目标。如何在纷繁复杂的日常中保持专注,高效地完成工作? GTD(Getting Things Done) GTD(Getting Things Don…

容器技术-docker4

一、docker资源限制 在使用 docker 运行容器时,一台主机上可能会运行几百个容器,这些容器虽然互相隔离,但是底层却使用着相同的 CPU、内存和磁盘资源。如果不对容器使用的资源进行限制,那么容器之间会互相影响,小的来说…

Qt:5.QWidget属性介绍(isEnabled和geometry)

目录 一、 QWidget属性的介绍: 二、Enabled属性: 2.1Enabled属性的介绍: 2.2获取控件当前可用状态的api——isEnabled(): 2.3设置控件当前的可用状态的api—— setEnabled() : 2.4 实例:通过一个按钮&…

Gin框架基础

1、一个简单的Gin示例 下载并安装Gin: go get -u github.com/gin-gonic/gin1.1 一个简单的例子 package mainimport ("net/http""github.com/gin-gonic/gin" )func main() {// 创建一个默认的路由引擎r : gin.Default()// 当客户端以GET方式访问 /hello…

企业化运维(6)_redis数据库

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 redis是一个key-value存储系统。和Memcached类似&#xff0…

优化模型验证30:多车场车辆路径问题模型及Gurobipy验证

目录 1 数学模型 1.1 用到的符号集合 1.2 模型公式 2 模型验证代码 2.1 Gurobipy代码 2.2 结果可视化 多车场车辆路径问题的定义:大型的物流公司拥有多个车场,而每个车场都有若干车辆用于配送,决策者需要根据客户的所在位置,将客户分配到合适的车场和车辆中。 1 数学模…

深度学习基准模型Transformer

深度学习基准模型Transformer 深度学习基准模型Transformer,最初由Vaswani等人在2017年的论文《Attention is All You Need》中提出,是自然语言处理(NLP)领域的一个里程碑式模型。它在许多序列到序列(seq2seq&#xf…

matlab仿真 通信信号和系统分析(上)

(内容源自详解MATLAB/SIMULINK 通信系统建模与仿真 刘学勇编著第三章内容,有兴趣的读者请阅读原书) 一、求离散信号卷积和 主要还是使用卷积函数conv,值得注意的是,得到的卷积和长度结果为81&#xff0…

lumbda常用操作

文章目录 lumbda的常用操作将List<String>转List<Integer>filter 过滤max 和min将List<Object>转为Map将List<Object>转为Map&#xff08;重复key&#xff09;将List<Object>转为Map&#xff08;指定Map类型&#xff09;过滤List重复 lumbda的常…

【强化学习的数学原理】课程笔记--2(贝尔曼最优公式,值迭代与策略迭代)

目录 贝尔曼最优公式最优 Policy求解贝尔曼最优公式求解最大 State Value v ∗ v^* v∗根据 v ∗ v^* v∗ 求解贪婪形式的最佳 Policy π ∗ \pi^* π∗一些证明过程 一些影响 π ∗ \pi^* π∗ 的因素如何让 π ∗ \pi^* π∗ 不 “绕弯路” γ \gamma γ 的影响reward 的…

15- 22题聚合函数 - 高频 SQL 50 题基础版

目录 1. 相关知识点2. 例子2.15 - 有趣的电影2.16 - 平均售价2.17 - 项目员工 I2.18 - 各赛事的用户注册率2.19 - 查询结果的质量和占比2.20 - 每月交易 I2.21 - 即时食物配送 II2.22 - 游戏玩法分析 IV 1. 相关知识点 函数 函数含义order by排序group by分组between 小值 an…

基于web的产品管理系统

文章目录 项目介绍主要功能截图:部分代码展示设计总结项目获取方式🍅 作者主页:超级无敌暴龙战士塔塔开 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获取源码联系🍅 项目介绍 基于web的产品管理系统,java项目。 ecli…

2024最新boss直聘岗位数据爬虫,并进行可视化分析

前言 近年来,随着互联网的发展和就业市场的变化,数据科学与爬虫技术在招聘信息分析中的应用变得越来越重要。通过对招聘信息的爬取和可视化分析,我们可以更好地了解当前的就业市场动态、职位需求和薪资水平,从而为求职者和招聘企业提供有价值的数据支持。本文将介绍如何使…