4. Linux工作目录切换和文本文件编辑命令

1.pwd:显示用户当前所处的工作目录

  举例:[root@Centos ~]# pwd

  /root

2.cd:切换工作路径  

  “cd -”命令返回到上一次所处的目录

  “cd..”命令进入上级目录

  “cd ~”命令切换到当前用户的家目录

  “cd ~username”切换到其他用户的家目录

3.ls:显示目录中的文件信息。

  使用ls 命令的“-a”参数看到全部文件(包括隐藏文件),使用“-l”参数可以查看文件的属性、大小等详细信息。将这两个参数整合之后,再执行ls 命令即可查看当前目录中的所有文件并输出这些文件的属性信息。

  举例:

   

  如果想要查看目录属性信息,则需要额外添加一个-d 参数。例如,可使用如下命令查看/etc 目录的权限与属性信息:  

[root@Centos ~]# ls -ald /etc
drwxr-xr-x. 132 root root 8192 Aug  3 18:27 /etc

4.cat:查看内容较少的纯文本文件  -n表示显示行号  

[root@Centos ~]# cat -n /etc/sysconfig/network-scripts/ifcfg-ens32 
     1    TYPE=Ethernet
     2    PROXY_METHOD=none
     3    BROWSER_ONLY=no
     4    BOOTPROTO=static
     5    DEFROUTE=yes
     6    IPV4_FAILURE_FATAL=no
     7    IPV6INIT=yes
     8    IPV6_AUTOCONF=yes
     9    IPV6_DEFROUTE=yes
    10    IPV6_FAILURE_FATAL=no
    11    IPV6_ADDR_GEN_MODE=stable-privacy
    12    NAME=ens32
    13    UUID=330f66b2-9db2-40fb-a496-e086582b7f59
    14    DEVICE=ens32
    15    ONBOOT=yes
    16    
    17    GATEWAY=192.168.137.2
    18    IP ADDR=192.168.137.1
    19    NETMASK=255.255.255.0
    20    DNS=223.5.5.5

5.more:查看内容较多的纯文本文件。

  Enter   默认向下1行,行数可以定义。

  空格    向下滚动一屏

   =        输出当前行的行号

  q         取消

6.head:查看纯文本文档的前n行

  举例:  

[root@Centos ~]# head -n 10 anaconda-ks.cfg 
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
# Keyboard layouts

7.tail:查看纯文本文档的后N 行或持续刷新内容

  实用功能:实时查看最新日志文件  

[root@Centos ~]# tail -f /var/log/messages
Aug  4 11:49:52 Centos dbus[769]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service'
Aug  4 11:49:52 Centos dbus-daemon: dbus[769]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service'
Aug  4 11:49:52 Centos dhclient[56056]: bound to 192.168.137.113 -- renewal in 295 seconds.
Aug  4 11:49:52 Centos systemd: Starting Network Manager Script Dispatcher Service...
Aug  4 11:49:52 Centos dbus-daemon: dbus[769]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Aug  4 11:49:52 Centos dbus[769]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Aug  4 11:49:52 Centos nm-dispatcher: req:1 'dhcp4-change' [ens32]: new request (4 scripts)
Aug  4 11:49:52 Centos systemd: Started Network Manager Script Dispatcher Service.
Aug  4 11:49:52 Centos nm-dispatcher: req:1 'dhcp4-change' [ens32]: start running ordered scripts...
Aug  4 11:49:52 Centos nm-dispatcher: /etc/sysconfig/network-scripts/ifcfg-ens32: line 18: IP: command not found
Aug  4 11:50:01 Centos systemd: Started Session 642 of user root.
Aug  4 11:50:01 Centos systemd: Starting Session 642 of user root.

8.tr:替换文本文件中的字符,格式为“tr [原始字符] [目标字符]”。

  如,将cat读取到的文本全部改为大写 

[root@Centos etc]# cat centos-release | tr [a-z] [A-Z]
CENTOS LINUX RELEASE 7.4.1708 (CORE)

9.wc :统计指定文本的行数、字数、字节数

  

  举例:统计当前系统有多少个用户 (passwd文件一行表示一个用户)。

[root@Centos ~]# wc -l /etc/passwd
40 /etc/passwd

 或者  

[root@Centos ~]# more /etc/passwd | wc -l
40

10.stat :查看文件的具体存储信息和时间等信息   

[root@Centos ~]# stat /etc/passwd
  File: ‘/etc/passwd’
  Size: 2065          Blocks: 8          IO Block: 4096   regular file
Device: fd00h/64768d    Inode: 16787341    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:passwd_file_t:s0
Access: 2020-08-05 00:00:50.510997353 +0800
Modify: 2020-07-30 01:45:45.209380705 +0800
Change: 2020-08-01 01:01:51.603993917 +0800
 Birth: -

11.cut :按“列”提取文本字符

  -f 参数来设置需要看的列数,使用-d 参数来设置间隔符号。

  举例:passwd 在保存用户数据信息时,用户信息的每一项值之间是采用冒号来间隔的,接下来我们使用下述命令尝试提取出passwd 文件中的用户名信息,即提取以冒号(:)为间隔符号的第一列内容:  

[root@Centos ~]# head -n 2 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin  
[root@Centos ~]# cut -f 1 -d : /etc/passwd
root
bin
daemon
adm
lp
sync
...

12.diff:比较多个文本文件的差异

  --brief 参数来确认两个文件是否不同  

  -c参数来详细比较出多个文件的差异之处  

[root@Centos test]# diff --brief A.txt B.txt 
Files A.txt and B.txt differ  
[root@Centos test]# diff -c A.txt B.txt 
*** A.txt    2020-08-04 14:53:40.897692451 +0800
--- B.txt    2020-08-04 14:53:18.563340871 +0800
***************
*** 1,6 ****
  Hello,I am Xinghen1216
! I'm from hebei
! I'm a network administrator
! I like Linux
  GO and UP!
  
--- 1,6 ----
  Hello,I am Xinghen1216
! I'm from sjz
! I'm a network engineer
! I like linux
  GO and UP!
原文地址:https://www.cnblogs.com/xinghen1216/p/13433296.html