文件内容显示
目录
1.浏览普通文件
1.1. 文件内容查看
1.1.1. cat 命令
例:
1.1.2 扩展tac命令:
1.1.3. more 命令
1.1.4. less命令
1.1.5. head命令
1.1.6. tail命令
1.2. 文件属性信息查看
1.2.1. file 命令
1.2.2. stat 命令
2. 文件内容过滤显示—grep
2.1 参数
2.1.2例:
2.2. /etc/passwd文件含义
2.2.3. 使用特殊符号匹配
编辑
2.2.3.4 例:
3. 切割显示-cut
4. 排序显示-sort
4.3. 参数
5. 去重显示-uniq
6. 文件中字符替换显示-tr
6.3. 参数
1.浏览普通文件
1.1. 文件内容查看
1.1.1. cat 命令
作用:查看文件内容,适合数据量较少
格式:cat -参数 文件名
参数:
-n:显示行号,加上
-b:文件中所有非空行增加行号,编号从1开始
例:
查看主机域名映射文件: [root@server ~]# cat /etc/hosts
127.0.0.1 为回环地址
::1 为IPV6格式
扩展:win10系统的本地的域名映射文件
查看硬盘分区表以及挂载信息: [root@server ~]# cat /etc/hosts
使用参数 -n:显示行号(所有行都加),(命令作用显示全局性,局部性警告信息)
[root@server ~]# cat -n /etc/sos/sos.conf
使用参数 -b:文件中所有非空行增加行号,编号从1开始
[root@server ~]# cat -b /etc/sos/sos.conf
通过cat来实现文件的拷贝:
[root@server ~]# cat /etc/fstab > /root/q1/f1.txt
[root@server ~]# cat /root/q1/f1.txt
通过cat来实现文件的追加:
[root@server ~]# cat /etc/passwd >> /root/q1/f1.txt
[root@server ~]# cat /root/q1/f1.txt
通过cat来合并文件
1.1.2 扩展tac命令:
[root@server q1]# tac r3 将文本内容倒置输出:
1.1.3. more 命令
作用:翻页查看文件内容,适合内容较多的文件查看
格式:more 文件名
注意:使用回车则一行一行查看,使用空格则整页查看,点击q键退出查看
[root@server q1]# more -sp /etc/passwd # -sp 减少空白行,先清屏后输出
[root@server q1]# more /var/log/messages 查看日志
1.1.4. less命令
作用:同more命令
格式:less 文件名
注意:可以使用上下键进行浏览,点击q退出浏览
1.1.5. head命令
作用: 查看文档前n行的内容
格式:head -数字 文件名
例:[root@server q1]# head /etc/passwd # 默认查看文档前10行内容
[root@server q1]# head -5 /etc/passwd
1.1.6. tail命令
作用:查看文档后n行内容
格式:tail -参数 文件名
参数
-数字:查看倒数行数
-f:动态刷新, 实时显示日志文件并且能动态更新
例: [root@server q1]# tail /etc/passwd # 默认查看文档后10行内容
查看一行内容 :
[root@server ~]# tail -f /var/log/messages # 监视日志
[root@server ~]# head -6 /etc/passwd | tail -1 # 查看/etc/passwd第6行
1.2. 文件属性信息查看
1.2.1. file 命令
作用:查看文件类型
格式:file -参数 文件名
文件类型: ASCII
file :ASCII 文本字符文件
empty:空文件
block special :块设备文件
character special :字符设备文件
diretory:目录
1.2.2. stat 命令
作用:显示文件属性信息
格式:stat 文件名
注意:一般通过该命令查看大小、Inode、硬链接、软连接
2. 文件内容过滤显示—grep
作用: 在指定的普通文件中查找并显示含有指定字符串的行,也可与管道符一起使用
格式: grep -参数 查找条件 文件名
2.1 参数
2.1.2例:
在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
2.2. /etc/passwd文件含义
作用:
记录用户账户信息:共分为7段,使用冒号分割
含义:
文件内容意义:账户名:密码代号x:UID:GID:注释:家目录:SHELL
第7列/sbin/nologin:不允许登录
[root@server ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bashroot : x : 0 : 0 : root : /root : /bin/bash
账户名:密码代号x:UID:GID:注释:家目录:SHELL
密码代号x:密码加密后的代号
UID:账户ID
GID:工作组编号
SHELL:命令解释器。只要配有命令解释器/bin/bash就是可以登陆的账户
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin 该解释器就是不可登陆的
[root@server ~]# tail -2 /etc/passwd
fox:x:1000:1000::/home/fox:/bin/bash::俩冒号中间没有任何内容代表,该普通账户没有任何注释。
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
2.2.3. 使用特殊符号匹配
2.2.3.4 例:
定位行首以a开头的(^后还可以加完整单词)
[root@server ~]# grep -n "^a" /etc/passwd
检索以“.”结尾的行
[root@server ~]# grep -n "\.$" /etc/fstab "\.$" $必须加在右侧
"\" (转义符 ) :将右侧的字符,赋予新功能或者回复到原有功能
由于“.”具有特殊含义,因此需要转义字符进行转义
过滤所有空白行:
[root@server ~]# grep -n "^$" /etc/sos/sos.conf
检索含有数字的行
[root@server ~]# grep -n [0-9] /etc/passwd
(精确匹配)就此处含义为数字范围1-9
[root@server ~]# grep -nw [1-9] /etc/passwd
检索含有字母的行
[root@server ~]# grep -n [A-Z] /etc/passwd
[root@server ~]# grep -ni [A-Z] /etc/passwd
[root@server ~]# grep -n [a-zA-Z] /etc/passwd (此处含义为忽略大小写)
3. 切割显示-cut
3.1. 作用:
cut命令用于按列提取文本内容
3.2. 格式 :
cut -d "分隔符" -f列数字 文件名
分隔符:分割的具体依据
3.3.
例:提取文件下的所有账户名
[root@server ~]# cut -d ":" -f1 /etc/passwd
例:提取IP地址
确定IP位置
[root@server ~]# ip a | grep ens160 | grep inet | cut -d "/" -f1 | cut -d " " -f6
# 注意空格
例:提取内核版本号:
[root@server ~]# uname -a | cut -d " " -f3
4. 排序显示-sort
4.1. 作用
sort命令用于对文本内容进行排序显示
4.2. 格式:
sort -参数 文件名
4.3. 参数
5. 去重显示-uniq
5.1. 作用
uniq命令用于去除文本中连续的重复行
5.2. 格式
uniq -参数 文件名
6. 文件中字符替换显示-tr
6.1. 作用
tr 指令从标准输入读取数据,经过替换或者删除后,将结果输出到标准输出
6.2. 格式
tr -参数 替换内容 新内容
6.3. 参数
-c :反选设定字符,符合 “替换内容” 的部份不做处理,不符合的剩余部份才进行转换
-d :删除指令字符
-s :缩减连续重复的字符成指定的单个字符
6.4. 示例
小写字母全部转换成大写字母
[root@server ~]# cat /etc/passwd | tr a-z A-Z

相关文章:
文件内容显示
目录 1.浏览普通文件 1.1. 文件内容查看 1.1.1. cat 命令 例: 1.1.2 扩展tac命令: 1.1.3. more 命令 1.1.4. less命令 1.1.5. head命令 1.1.6. tail命令 1.2. 文件属性信息查看 1.2.1. file 命令 1.2.2. stat 命令 2. 文件内容过滤…...
Milvus+Attu
Milvus 1.下载 https://github.com/milvus-io/milvus/releases/wget https://github.com/milvus-io/milvus/releases/download/v2.3.0/milvus-standalone-docker-compose.yml下载milvus-standalone-docker-compose version: 3.5services:etcd:container_name: milvus-etcdim…...
LeetCode算法二叉树—226. 翻转二叉树
目录 226. 翻转二叉树 代码: 运行结果: 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 输入:root [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1]示例 2: 输入…...
AI项目十:Swin Transformer目标检测环境搭建
若该文为原创文章,转载请注明原文出处。 Swin Transformer是做什么的这里不做介绍,主要是记录下学习的全过程,Swin Transformer在搭建和训练的过程中,折腾了很久,主要是在折腾环境。 一、AutoDL租用实例 个人没有GP…...
【IPC 通信】信号处理接口 Signal API(5)
收发信号思想是 Linux 程序设计特性之一,一个信号可以认为是一种软中断,通过用来向进程通知异步事件。 本文讲述的 信号处理内容源自 Linux man。本文主要对各 API 进行详细介绍,从而更好的理解信号编程。 kill(2) 遵循 POSIX.1 - 2008 1.库 …...
Arduino PLC IDE
Arduino PLC IDE MCU单片机进入全新的PLC领域概述需要的硬件和软件下一步操作1. Arduino PLC IDE Tool Setup2. Arduino PLC IDE Setup3. Project Setup4. Download the Runtime5. Connect to the Device6. License Activation with Product Key (Portenta Machine Control) 结…...
记录使用iText7查找PDF内容关键字坐标,加盖电子签名、印章
一、前言 项目以前签字都是由C端那边进行合成操作,最近项目要求把那块功能,由后端进行实现,其中包含坐标、关键字、任意位置进行签字操作,坐标是最容易实现的,曾经也写过类似的功能在(添加图片印章到PDF&a…...
Java8实战-总结37
Java8实战-总结37 默认方法不断演进的 API初始版本的 API第二版 API 默认方法 传统上,Java程序的接口是将相关方法按照约定组合到一起的方式。实现接口的类必须为接口中定义的每个方法提供一个实现,或者从父类中继承它的实现。但是,一旦类库…...
【超详细】前段开发之详细的Vue3入门教程,特别适合小白系统学习,入门到熟练使用Vue看这一篇就够了!
前言: 这篇文章更加侧重的是Vue3不同于Vue2的知识点,如果学习Vue2请看下面这篇文章 Vue2详细系统入门教程 11.2 Vue3 声明:图片资源来自于黑马程序员公开学习资料 本人在学习当中,详细整理了笔记,供大家参考学习 1…...
【深度学习】ONNX模型多线程快速部署【基础】
【深度学习】ONNX模型CPU多线程快速部署【基础】 提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论 文章目录 【深度学习】ONNX模型CPU多线程快速部署【基础】前言搭建打包环境python多线程并发简单教程基本教程ONNX模型多线程并发 打包成可执行文件总结 前…...
Python 同、异步HTTP客户端封装:性能与简洁性的较量
一、前言 引入异步编程趋势:Python的异步编程正变得越来越流行。在过去,同步的HTTP请求已经不足以满足对性能的要求。异步HTTP客户端库的流行:目前,有许多第三方库已经实现了异步HTTP客户端,如aiohttp和httpx等。然而…...
无代码赋能数字化,云表搭桥铺路链接“数据孤岛”
什么是信息孤岛 企业数字化转型过程中,信息孤岛是一个突出的问题。这种情况发生的原因是,企业内部使用了多种应用软件,时间一长,员工在不同的系统中积累了大量的企业数据资产。然而,由于这些系统之间的数据无法互通&am…...
无需公网IP,实现公网SSH远程登录MacOS【内网穿透】
目录 前言 1. macOS打开远程登录 2. 局域网内测试ssh远程 3. 公网ssh远程连接macOS 3.1 macOS安装配置cpolar 3.2 获取ssh隧道公网地址 3.3 测试公网ssh远程连接macOS 4. 配置公网固定TCP地址 4.1 保留一个固定TCP端口地址 4.2 配置固定TCP端口地址 5. 使用固定TCP端…...
网络爬虫学习笔记 1 HTTP基本原理
HTTP原理 ~~~~~ HTTP(Hyper Text Transfer Protocol,超文本传输协议)是一种使用最为广泛的网络请求方式,常见于在浏览器输入一个地址。 1. URI和URL URL(Universal Resource Locator,统一资源定位器&…...
113. 路径总和ii
力扣题目链接(opens new window) 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 给定如下二叉树,以及目标和 sum 22, 在路径总和题目的基础上&…...
百度APP iOS端包体积50M优化实践(六)无用方法清理
一、前言 百度APP包体积经过一期优化,如无用资源清理,无用类下线,Xcode编译相关优化,体积已经有了明显的减少。但是优化后APP包体积在iPhone11上仍有350M的空间占用。与此同时百度APP作为百度的旗舰APP,业务迭代非常多…...
MySQL了解视图View (视图篇 一)
视图View是什么? MySQL的视图是一种虚拟表,它是基于一个或多个表的查询结果构建而成的。视图并不实际存储数据,而是根据定义的查询逻辑动态生成结果。 ----------------------------------- 视图的特点: - 虚拟表:…...
使用applescript自动化trilium的数学公式环境
众所周知,trilium什么都好,就是对数学公式的支持以及markdown格式的导入导出功能太拉了,而最拉的时刻当属把这两个功能结合起来的时候:导入markdown文件之后,原来的数学公式全没了,需要一个一个手动用ctrlm…...
idea中maven项目打包成jar,报错没有主清单属性解决方法
使用idea自带的打包可能会出现一下问题 在pom.xml中引入下面的依赖,即可解决 <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><executions&…...
Caddy Web服务器深度解析与对比:Caddy vs. Nginx vs. Apache
🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…...
Vit工程化应用(timm 库)
pip install timm import timm import torch from PIL import Image import requests from io import BytesIO# 1. 加载模型 (ViT Base版本,16x16图块,在ImageNet-1k上预训练) # 设置 pretrainedTrue 自动下载权重 model timm.create_model(vit_base_pa…...
从CAD到PCB的‘神同步’:利用Altium Designer图层映射,让你的丝印层(Top Overlay)自动对齐结构孔
从CAD到PCB的‘神同步’:Altium Designer图层映射实战指南 在消费电子和嵌入式设备开发中,PCB与外壳结构的精确对齐常常成为产品落地的最后一道障碍。想象一下:当结构工程师更新了智能手表外壳的3D模型,新增了螺丝孔位和屏幕开口&…...
企业内如何通过 Taotoken 实现 API 访问权限的精细化控制与审计
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 企业内如何通过 Taotoken 实现 API 访问权限的精细化控制与审计 当企业将大模型能力引入内部工作流时,如何安全、可控地…...
开源物联网平台SiteWhere:微服务架构下的设备管理与数据流实战
1. 项目概述:一个开源的物联网应用平台如果你正在寻找一个能帮你快速搭建、管理和扩展物联网应用的核心平台,而不是从零开始造轮子,那么SiteWhere这个开源项目绝对值得你花时间深入了解。它不是一个简单的设备连接网关,而是一个功…...
马斯克诉奥尔特曼案第三周:微软与 OpenAI 举证反击,争议焦点浮出水面
【案件进展概述】智东西 5 月 12 日消息,今天,马斯克诉奥尔特曼案进入第三周,被告方关键证人相继出庭,微软 CEO 萨提亚纳德拉 (Satya Nadella)、OpenAI 联合创始人兼前首席科学家 伊利亚苏茨克维 ÿ…...
NovelForge:AI长篇小说创作引擎,结构化写作与知识图谱实战
1. 项目概述:一个为长篇创作而生的AI写作伙伴如果你和我一样,是一个对长篇故事创作充满热情,但又时常被海量设定、角色关系、情节推进和前后一致性搞得焦头烂额的作者,那么NovelForge的出现,可能正是我们一直在等待的“…...
渗透PHP伪协议
一、debug调试 1、定义 Debug,又叫断点调试,就是对写好的程序进行逐步运行、分解、调试的过程,通过这个过程,我们可以跟踪程序的详细运行过程, 是程序员的开发神器,也是开发必会的一个重要技能。 2、意义…...
跨越版本鸿沟:Matlab 2020b与VS2022混合编译环境搭建实战
1. 环境准备:当Matlab 2020b遇上VS2022 第一次尝试在Matlab 2020b里调用VS2022编译器时,命令行弹出的红色报错让我愣了半天。官方文档明确写着Matlab 2020b最高只支持VS2019,这就像让Windows XP运行最新版Photoshop——理论上不可能ÿ…...
掌握Windows 11精简艺术:Tiny11Builder实战手册
掌握Windows 11精简艺术:Tiny11Builder实战手册 【免费下载链接】tiny11builder Scripts to build a trimmed-down Windows 11 image. 项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder 你是否曾因Windows 11的臃肿而烦恼?老旧设…...
imFile下载管理器:从入门到精通的免费全能下载解决方案
imFile下载管理器:从入门到精通的免费全能下载解决方案 【免费下载链接】imfile-desktop A full-featured download manager. 项目地址: https://gitcode.com/gh_mirrors/im/imfile-desktop imFile是一款功能全面的免费下载管理器,支持HTTP、FTP、…...








































