首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux文本编辑命令

Linux文本编辑命令

作者头像
心跳包
发布2020-08-31 10:14:27
2.5K0
发布2020-08-31 10:14:27
举报

1.cat

用于查看纯文本文件

格式:cat[选项][文件]

[root@linuxprobe ~]# cat -n initial-setup-ks.cfg
     1	#version=RHEL7
     2	# X Window System configuration information
     3	xconfig  --startxonboot
     4	
     5	# License agreement
     6	eula --agreed
     7	# System authorization information
     8	auth --enableshadow --passalgo=sha512
     9	# Use CDROM installation media
    10	cdrom
    11	# Run the Setup Agent on first boot
    12	firstboot --enable
    13	# Keyboard layouts
    14	keyboard --vckeymap=us --xlayouts='us'
    15	# System language
    16	lang en_US.UTF-8
    17	
    18	ignoredisk --only-use=sda
    19	# Network information
    20	network  --bootproto=dhcp --device=eno16777728 --onboot=off --ipv6=auto
    21	network  --bootproto=dhcp --hostname=linuxprobe.com
    22	# Root password
    23	rootpw --iscrypted $6$PeIDF1vfB3ZSSrXQ$fTg9v29sKCOGm48o1y/gqaTGhC62VIU1QuYYxxfyW3i4CqGgng3D.vYgKHhi8wiv/nmCQ0k4JWojFXzE28cV5/
    24	# System timezone
    25	timezone Antarctica/Casey --isUtc --nontp
    26	user --homedir=/home/linuxprobe --name=linuxprobe --password=$6$nSxR57Hi9jP3usBn$KgRL6Bz1zZxXus90/WmAENEqIfWfmOocBBVV.XgQ0H.lTXPfwrk/P7rOdROx2LqQJ2/j1LT9hooO2nCd.8iq1. --iscrypted --gecos="linuxprobe"
    27	# System bootloader configuration
    28	bootloader --location=mbr --boot-drive=sda
    29	autopart --type=lvm
    30	# Partition clearing information
    31	clearpart --none --initlabel 
    32	
    33	%packages
    34	@base
    35	@core
    36	@desktop-debugging
    37	@dial-up
    38	@fonts
    39	@gnome-desktop
    40	@guest-agents
    41	@guest-desktop-agents
    42	@input-methods
    43	@internet-browser
    44	@multimedia
    45	@print-client
    46	@x11
    47	
    48	%end
    49	
     1	#version=RHEL7
     2	# X Window System configuration information
     3	xconfig  --startxonboot
     4	
     5	# License agreement
     6	eula --agreed
     7	# System authorization information
     8	auth --enableshadow --passalgo=sha512
     9	# Use CDROM installation media
    10	cdrom
    11	# Run the Setup Agent on first boot
    12	firstboot --enable
    13	# Keyboard layouts
    14	keyboard --vckeymap=us --xlayouts='us'
    15	# System language
    16	lang en_US.UTF-8
    17	
    18	ignoredisk --only-use=sda
    19	# Network information
    20	network  --bootproto=dhcp --device=eno16777728 --onboot=off --ipv6=auto
    21	network  --bootproto=dhcp --hostname=linuxprobe.com
    22	# Root password
    23	rootpw --iscrypted $6$PeIDF1vfB3ZSSrXQ$fTg9v29sKCOGm48o1y/gqaTGhC62VIU1QuYYxxfyW3i4CqGgng3D.vYgKHhi8wiv/nmCQ0k4JWojFXzE28cV5/
    24	# System timezone
    25	timezone Antarctica/Casey --isUtc --nontp
    26	user --homedir=/home/linuxprobe --name=linuxprobe --password=$6$nSxR57Hi9jP3usBn$KgRL6Bz1zZxXus90/WmAENEqIfWfmOocBBVV.XgQ0H.lTXPfwrk/P7rOdROx2LqQJ2/j1LT9hooO2nCd.8iq1. --iscrypted --gecos="linuxprobe"
    27	# System bootloader configuration
    28	bootloader --location=mbr --boot-drive=sda
    29	autopart --type=lvm
    30	# Partition clearing information
    31	clearpart --none --initlabel 
    32	
    33	%packages
    34	@base
    35	@core
    36	@desktop-debugging
    37	@dial-up
    38	@fonts
    39	@gnome-desktop
    40	@guest-agents
    41	@guest-desktop-agents
    42	@input-methods
    43	@internet-browser
    44	@multimedia
    45	@print-client
    46	@x11
    47	
    48	%end
    49	

2.more

用于查看纯文本文件

格式:more[选项][文件]

[root@linuxprobe ~]# more initial-setup-ks.cfg
#version=RHEL7
# X Window System configuration information
xconfig  --startxonboot

# License agreement
eula --agreed
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Run the Setup Agent on first boot
firstboot --enable
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8

ignoredisk --only-use=sda
# Network information
network  --bootproto=dhcp --device=eno16777728 --onboot=off --ipv6=auto
network  --bootproto=dhcp --hostname=linuxprobe.com
# Root password
rootpw --iscrypted $6$PeIDF1vfB3ZSSrXQ$fTg9v29sKCOGm48o1y/gqaTGhC62VIU1QuYYxxfyW
--More--(49%)

3.head

用于查看纯文本文档的当前N行

格式:head[选项][文件]

[root@linuxprobe ~]# head -n 20 initial-setup-ks.cfg
#version=RHEL7
# X Window System configuration information
xconfig  --startxonboot

# License agreement
eula --agreed
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Run the Setup Agent on first boot
firstboot --enable
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8

ignoredisk --only-use=sda
# Network information
network  --bootproto=dhcp --device=eno16777728 --onboot=off --ipv6=auto

4.tail

用于查看纯文本文档后N行或持续刷新内容,

格式:tail[选项][文件]

[root@linuxprobe ~]# tail -f /var/log/messages
Jun  7 17:33:35 linuxprobe systemd: Started Hostname Service.
Jun  7 17:36:18 linuxprobe dbus-daemon: dbus[1020]: [system] Activating via systemd: service name='net.reactivated.Fprint' unit='fprintd.service'
Jun  7 17:36:18 linuxprobe dbus[1020]: [system] Activating via systemd: service name='net.reactivated.Fprint' unit='fprintd.service'
Jun  7 17:36:18 linuxprobe systemd: Starting Fingerprint Authentication Daemon...
Jun  7 17:36:18 linuxprobe dbus-daemon: dbus[1020]: [system] Successfully activated service 'net.reactivated.Fprint'
Jun  7 17:36:18 linuxprobe dbus[1020]: [system] Successfully activated service 'net.reactivated.Fprint'
Jun  7 17:36:18 linuxprobe systemd: Started Fingerprint Authentication Daemon.
Jun  7 17:36:18 linuxprobe fprintd: ** (fprintd:8037): WARNING **: fprint init failed with error -99
Jun  7 17:36:18 linuxprobe systemd: fprintd.service: main process exited, code=exited, status=157/n/a
Jun  7 17:36:18 linuxprobe systemd: Unit fprintd.service entered failed state.

tai命令的强悍的功能是一个可以持续刷新一个文件的内容,当想要实现实时查看最新日志文件,tail -f

5.tr命令

用于替换文本文件中的字符

格式:tr[原始字符][目标字符]

很多时候我们想快速替换文本中的一些词汇,又或者把整个文本内容都进行替换,如果进行手工替换,难免工作了太大,尤其是需要处理大批量的内容时,进行手工替换更是不现实。这时,可以用cat命令读取待处理文本,然后通过管道符,把这些内容传递给tr命令进行替换操作

[root@linuxprobe ~]# cat anaconda-ks.cfg| tr  [a-z] [A-Z]
#VERSION=RHEL7
# SYSTEM AUTHORIZATION INFORMATION
AUTH --ENABLESHADOW --PASSALGO=SHA512

# USE CDROM INSTALLATION MEDIA
CDROM
# RUN THE SETUP AGENT ON FIRST BOOT
FIRSTBOOT --ENABLE
IGNOREDISK --ONLY-USE=SDA
# KEYBOARD LAYOUTS
KEYBOARD --VCKEYMAP=US --XLAYOUTS='US'
# SYSTEM LANGUAGE
LANG EN_US.UTF-8

# NETWORK INFORMATION
NETWORK  --BOOTPROTO=DHCP --DEVICE=ENO16777728 --ONBOOT=OFF --IPV6=AUTO
NETWORK  --HOSTNAME=LINUXPROBE.COM
# ROOT PASSWORD
ROOTPW --ISCRYPTED $6$PEIDF1VFB3ZSSRXQ$FTG9V29SKCOGM48O1Y/GQATGHC62VIU1QUYYXXFYW3I4CQGGNG3D.VYGKHHI8WIV/NMCQ0K4JWOJFXZE28CV5/
# SYSTEM TIMEZONE
TIMEZONE ANTARCTICA/CASEY --ISUTC --NONTP
USER --HOMEDIR=/HOME/LINUXPROBE --NAME=LINUXPROBE --PASSWORD=$6$NSXR57HI9JP3USBN$KGRL6BZ1ZZXXUS90/WMAENEQIFWFMOOCBBVV.XGQ0H.LTXPFWRK/P7RODROX2LQQJ2/J1LT9HOOO2NCD.8IQ1. --ISCRYPTED --GECOS="LINUXPROBE"
# X WINDOW SYSTEM CONFIGURATION INFORMATION
XCONFIG  --STARTXONBOOT
# SYSTEM BOOTLOADER CONFIGURATION
BOOTLOADER --LOCATION=MBR --BOOT-DRIVE=SDA
AUTOPART --TYPE=LVM
# PARTITION CLEARING INFORMATION
CLEARPART --NONE --INITLABEL 

%PACKAGES
@BASE
@CORE
@DESKTOP-DEBUGGING
@DIAL-UP
@FONTS
@GNOME-DESKTOP
@GUEST-AGENTS
@GUEST-DESKTOP-AGENTS
@INPUT-METHODS
@INTERNET-BROWSER
@MULTIMEDIA
@PRINT-CLIENT
@X11

%END

6.wc

用于统计指定文本的行数、字数、字节数

格式:wc[参数]文本

-l 只显示行数

-w 只显示单词数

-c 只显示字节数

[root@linuxprobe ~]# wc -l /etc/passwd
38 /etc/passwd

7.stat

用于产科文件的具体存储信息和时间等信息

格式:stat 文件名称

[root@linuxprobe ~]# stat anaconda-ks.cfg
  File: ‘anaconda-ks.cfg’
  Size: 1241      	Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d	Inode: 68912045    Links: 1
Access: (0600/-rw-------)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:admin_home_t:s0
Access: 2018-06-07 16:02:14.657903006 +0800
Modify: 2018-05-25 03:53:59.660024224 +0800
Change: 2018-05-25 03:53:59.660024224 +0800
 Birth: -

8.cut

用于按“列“提取文本字符

格式:cut[参数]文本

在Linux中如何准确的提取最想要的数据,一般而言,按基于“行”的方式,来提取数据比较简单,只需要设置好要搜索的关键词即可。但是如何按列搜索,不仅要使用-f参数来设置需要看的列数,还需要使用-d参数来设置间隔符合。passwd在保存用户数据信息时,用户信息的每一项值之间是采用冒号来间隔

[root@linuxprobe ~]# head -n 2 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[root@linuxprobe ~]# cut -d: -f1 /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
games
ftp
nobody
dbus
polkitd
unbound
colord
usbmuxd
avahi
avahi-autoipd
libstoragemgmt
saslauth
qemu
rpc
rpcuser
nfsnobody
rtkit
radvd
ntp
chrony
abrt
pulse
gdm
gnome-initial-setup
postfix
sshd
tcpdump
linuxprobe

9.diff

用于比较多个文本文件的差异

格式:diff[参数][文件]

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-06-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档