【Linux】网络系统配置、文件系统常用指令

Linux操作系统


Linux操作系统介绍、简单使用


Linux基础教程,没什么特别的地方,简单复习一下【之前用的ubutn】现在使用的CentOS7

Linux基础操作

查看网络IP和网关

在cmd中直接输入命令ipconfig就可以查看本机的ip

在linux中,使用的是ifconfig查看本地的ip地址

[root@hadoop100 ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.204.129  netmask 255.255.255.0  broadcast 192.168.204.255
        inet6 fe80::6404:e373:bdf4:ecd8  prefixlen 64  scopeid 0x20<link>

互相ping可以发现主机和虚拟机之间是相互连通的

VMware提供了三种网络的连接模式:

  • 桥接模式: 虚拟机直接连接外部物理网络,主机起到的作用只是桥梁作用,虚拟机可以直接访问外部网络,并且对于外部网络是可见的
  • NAT模式(network address translation): 虚拟机和主机构建一个专用的网络,通过虚拟网络地址转换【NAT】设备对IP进行转换,虚拟机通过共享主机IP可以访问外部网络,但是外部网络不能访问虚拟机
  • 仅主机模式: 虚拟机只与外部主机共享一个专用网络,不能与外部进行通信,也就是只有上面的VMnet1网卡,该网卡就是构建交换机,形成一个专用网络,并且Linux虚拟机与外网的连接断掉了,不能访问互联网

相当于就是NAT构建了一个虚拟的局域网,所有的虚拟机通过路由连接到PC主机,所有的VMware中的虚拟机之间是可以相互访问的【PC上有两个VMware的网卡,其中一个就是相当于路由的作用,另外一个就是Vmnet8,作用就是可以再次连接到路由,从而实现对于局域网的中的VM的访问】

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EhBzQbS4-1650378811435)(C:\Users\OMEY-PC\Desktop\Linux.png)]

手绘了一张图片,大家应该可以大致看懂网络NAT的转换方式了

设置静态IP vim /etc/syconfig/network-scripts/

DHCP时动态分配IP,所以每次启动都是动态的IP,所以不是很方便,因为不方便主机进行远程操纵,所以需要将VM虚拟机的设置为静态IP

既然要修改,那么肯定是在配置文件中,配置文件放在etc目录下,在系统配置文件夹下面的network下面,tab补全

vim /etc/sysconfig/network-scripts/ifcfg-ens33
    
    
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"

这里可以看到协议就是dhcp动态分配,所以将其改为静态即可static; 就是vim的操作命令

静态之后就需要配置几个内容

  • IP地址 : IPADDR= 这里就是192.168.111.100
  • 网关 : GATEWAY = 192.168.204.2
  • 域名解析器: DNS1 = 192.168.204.2

之后重启网络服务, service network restart

修改IP后ping问题

物理机能够ping虚拟机,但是虚拟机不能ping物理机,这是因为物理机的防火墙,将其关掉即可

虚拟机能Ping主机,但是不能Ping外网,因为DNS设置问题,不能连接外网

虚拟机Ping www.baidu.com域名未知,可能时GATEWAY和DNS设置问题

关闭NetworkManager服务, systemctl stop NetworkManager 关闭 ; disabled 禁用

如果检查出systemctl status network进行检查

更改主机名

可以直接敲IP地址访问,但是同时也可以使用主机名代替,就像之前的localhost代替本机类似,这里使用hostname可以查看,在etc下面修改

hostname      查看
vim  /etc/hostname   修改  但是需要重启服务器

hostnamectl set-hostname XXX  直接修改

更改之后要实现映射关系,这里的映射关系是hosts文件记录,这也是一个配置文件 /etc/hosts

192.168.204.100  hadoop100

除了修改这里的hosts之外,还要要主机也能找到

在windows–> system32-- > drivers --> etc --> hosts中进行修改

//这里提醒一下,每次配置网络之后就需要重新start   service network restart

配置网络需要在物理机上配置Vnet8,配置ip端口、网关名,相当于就是这个路由器的; 那么按照之前的那幅图,在同一个局域网,所以ipv4的前三位相同,就配置为1即可,然后网关和DNS配置为2,在ens33中配置相关的端口即可 ,重启访问
C:\Users\OMEY-PC>ping hadoop100

正在 Ping hadoop100 [192.168.***.100] 具有 32 字节的数据:
来自 192.168.204.100 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.204.100 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.204.100 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.204.100 的回复: 字节=32 时间<1ms TTL=64

192.168.204.100 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 1ms,平均 = 0ms

可以看到这里的就配置成功

远程登录 Xshell、Xftp-7

一般在实际生产中,机房是不可能直接进的,那么要操作服务器就需要进行远程登录,远程工具有很多种类,比如XShell、SSH Secure Shell等,这里就安装Xshell

基于ssh协议直接进行远程登录 ssh user@hostname

可以直接在DOS窗口中输入ssh命令进行远程登录,当然可能会出现问题

'ssh' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

这里可能是系统没有下载SSH客户端,下载即可

右键开始键 —> 应用与功能 --> 可选功能 —> 添加功能 ----> 下载OpenSSH客户端

配置环境变量 ---- 这个很多次了,说一下参数

SSH_PATH C:\Windows\System32\OpenSSH\

在path中加入

%SYSTEMROOT%\System32\OpenSSH\;
C:\Windows\System32\OpenSSH

这样就可以使用ssh指令了,环境变量的配置也确实挺烦的,所以后面出现了Docker,这样简化了操作

C:\Users\OMEY-PC>ssh root&hadoop100
ssh: Could not resolve hostname root: \262\273\326\252\265\300\325\342\321\371\265\304\326\367\273\372\241\243
'hadoop100' is not recognized as an internal or external command,
operable program or batch file.

C:\Users\OMEY-PC>ssh root@hadoop100
The authenticity of host 'hadoop100 (192.168.***.100)' can't be established.
ECDSA key fingerprint is SHA256:JwDUnYOszNFgjdkPFGi6g3N/f06VQVW7rh6yW3k5mcU.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'hadoop100,192.168.204.100' (ECDSA) to the list of known hosts.
root@hadoop100's password:
Last login: Tue Apr 19 11:38:24 2022 from 192.168.204.1
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.***.100

使用的命令格式 ssh user@hostname 这样就可以进行远程登录,点击yes、输入pwd即可

使用工具进行远程登录

大家可以自行百度下载即可🎄
在这里插入图片描述

只要输入密码等,就可以实现远程登录了,这里输入ifconfig进行验证

https://www.xshellcn.com/ — 中文官网,下载更快

接下来远程连接了之后还要能够和主机之间进行文件的传输,所以自行到官网下载Xftp-7即可,安装之后还是配置主机和用户即可使用

配置一下编码方式: 文件 —> 当前会话属性 —> 点击 —> 语言设置 —> UTF8

在这里插入图片描述

这样就可以正常进行远程的通信了

系统管理 systemctl

上面已经配置了网络的相关设置,其中使用到了一个命令 service network restart,这里的service指令就是一个服务?

首先复习一下操作系统和java基础:java中有精灵线程的概念,daemon thread,就是守护线程,线程是CPU调度的最小单位

  • 计算机中,一个正在执行的程序【命令】 , 就是一个process,是CPU资源分配的最小单位

进程可以看作火车,线程当作火车的车厢,所以进程中包含多个线程,CPU会为每一个进程分配一个唯一的地址空间,使用PID【process ID】标识,一个线程挂掉,整个进程就会崩调

守护进程: 生命周期很长【一直存在】、常驻内存的进程就是服务service 比如网络服务进程,一般只要不关机,就一直服务呢,一直占用一块内存【CPU中可以查看】

CentOS中使用的方式就是:

service 服务名称 start/stop/restart/status 比如上面的网络服务的重启就是这个命令

比如查看服务的命令

[root@localhost ~]# ls /etc/init.d
functions netconsole network README

但是这里发现启用的服务只有network两个,这里是因为旧版的命令已经不再使用了,所以需要使用新版本的

systemctl 基本

CentOS 7版本已经逐步没有使用上面的service的命令了,而是使用systemctl命令【system control】

systemctl start/stop/restart/status 服务 — status 状态

所以现在的服务是放在usr下的lib的systemd中的system文件夹下

查看当前的所有的服务: 使用ls命令就可以列出

查看服务
[root@localhost ~]# ls /usr/lib/systemd/system
abrt-ccpp.service
abrtd.service
abrt-oops.service
abrt-pstoreoops.service
abrt-vmcore.service
abrt-xorg.service
accounts-daemon.service
alsa-restore.service
alsa-state.service

比如这里可以查看一下防火墙服务firewalld【d结尾就是daemon】

[root@localhost ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) 

这里就看到了防火墙的服务是打开的状态

NetworkManager.service - Network Manager
   Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
   Active: active (running) 

可以看到Centos7的网络状态NetworkManager也是active,所以可以正常的上网,关闭就不行

service开机自启设置 setup

对于服务,是可以设置是否开机自启动的,直接输入命令setup就可以进入交互式窗口,在这里就可以设置服务的开机的行为
在这里插入图片描述

进入的图形化界面如上所示,这里可以看到两个重要的分块,一个是SysV initScripts — 就是老版本的服务;而下的systemd services ---- 新版本的服务呢 一个是在/etc/init.d CentOS 7的有一个服务进程为systemd服务,就是后面的所有的进程都是基于这个进程的,所以systemd就是第一个启用的进程; 这些服务都是在usr/lib/systemd/system下

命令式设置开机的自启动

systemctl list-unit-files 可以查看服务开机的自启动状态

systemctl disable … 关闭开机自启动

systemctl enbale … 开启开机自启

UNIT FILE 就是代指的服务,查看所有就是list即可

[root@localhost ~]# systemctl list-unit-files
UNIT FILE                                     STATE   
proc-sys-fs-binfmt_misc.automount             static  
dev-hugepages.mount                           static  
dev-mqueue.mount                              static  
proc-fs-nfsd.mount                            static  
proc-sys-fs-binfmt_misc.mount                 static  
run-vmblock\x2dfuse.mount                     disabled



[root@localhost ~]# systemctl enable sssd
Created symlink from /etc/systemd/system/multi-user.target.wants/sssd.service to /usr/lib/systemd/system/sssd.service.


[root@localhost ~]# systemctl disable sssd
Removed symlink /etc/systemd/system/multi-user.target.wants/sssd.service.

系统的运行级别

在CentOs7 中,Linux系统的运行界别一共有7种,级别越高,支持的功能越高;比如0就是系统停机状态

Linux运行级别 的图像结果

常用的状态就是3和5,状态3就是完全的多用户状态,登录后进入的式控制台命令行; 而级别5就是进入的图像GUI; 级别六式正常关闭重启 — 默认的级别也不能到这里,不然一直关机,卡bug

在Centos 7 种,于宁的几倍简化成了

multi-user.target: 多用户有网,无图形界面,就是原来的3

graphical.target: 多用户有网,且有图形界面, 就是原来的5

查看当前的系统的运行运行级别:·systemctl get-default

修改当前的运行的级别: systemctl set-default TRAGET 【就上面两种】

[root@localhost ~]# systemctl get-default
graphical.target

因为安装的时候就不是最小安装,所以默认级别就是graphical

防火墙的关闭

上面在演示服务的时候就查看过状态了,防火墙就是一个服务,所以使用命令status就可查看

比如这里给一个操作的小练习

查看当前防火墙服务的状态
设置为相反的状态,再设置为当前状态
查看防火墙的开机自启动状态,关闭开机自启动


[root@localhost ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since 二 2022-04-19 19:16:57 CST; 4h 2min left
     Docs: man:firewalld(1)
 Main PID: 938 (firewalld)
   CGroup: /system.slice/firewalld.service
           └─938 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid
Hint: Some lines were ellipsized, use -l to show in full.
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl start firewalld
[root@localhost ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: active (running) since 二 2022-04-19 15:15:29 CST; 18s ago
     Docs: man:firewalld(1)
 Main PID: 58626 (firewalld)
    Tasks: 2
   CGroup: /system.slice/firewalld.service
           └─58626 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid

Hint: Some lines were ellipsized, use -l to show in full.
[root@localhost ~]# systemctl enable firewalld
[root@localhost ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@localhost ~]# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/multi-user.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.

就是上面的CentOs的服务命令的使用

关机重启

Linux因为轻量并且没有图形界面占用资源,一般使用再服务器领域,所以作为服务器一般要持久运行的,关机或者宕机带来的损失很严重;

但是还是介绍一些常用的命令

  • sync : 将数据又内存同步到磁盘中
  • halt 停机、关闭系统,不断电【待机】
  • poweroff 关机、断电
  • reboot : 重启 【等同于shultdown -r row】
  • shutdown 【-H/-r】 时间[now 等待多久后关机min] halt,停机, reboot 重启

Linux的磁盘读写

Linux系统为了提高磁盘读写的效率【其实项目也要像这样】,采用的预读迟写, 也就是拿到数据后,不会马上写入硬盘持久化,而是先放在内存中缓冲,缓冲区满后写入磁盘 ------ 但是内存不是持久化的,一旦poweroff那么数据就没有了, 所以需要sync指令立即将数据写入磁盘

....sync  [同步, vue中使用的asyn异步]到磁盘
    reboot : 立刻重启  ---- 刚刚试了,立马给关了....

Linux常用shell命令

这个部分非常的important,因为Linux面向文件,并且后期企业没有图形界面,所有的操作都是使用命令操作的;Linux操作最里层就是Linux内核直接来控制硬件,而上面的shell层就是可以通过终端输入命令,shell可以看作一个命令解释器,然后将命令解释交给内核执行

help 类型 man help

帮助类型的命令就是获取帮助信息的,没什么太重要,但是有的时候很有用,初学java的时候的命令就是使用javac --help就可以获取帮助

man +(命令/配置文件) 获取帮助

这个命令很有用,后面接上命令就可以查看命令的作用

[...]# man  ls

LS(1)                       General Commands Manual                      LS(1)

NAME
       ls, dir, vdir - 列目录内容

提要
       ls [选项] [文件名...]

       POSIX 标准选项: [-CFRacdilqrtu1]

GNU 选项 (短格式):
       [-1abcdfgiklmnopqrstuxABCDFGLNQRSUX]  [-w  cols] [-T cols] [-I pattern]
       [--full-time]    [--format={long,verbose,commas,across,vertical,single-
       column}]                            [--sort={none,time,size,extension}]
       [--time={atime,access,use,ctime,status}] [--color[={none,auto,always}]]
       [--help] [--version] [--]

描述( DESCRIPTION )
       程序ls先列出非目录的文件项,然后是每一个目录中的“可显示”文件。如果
       没有选项之外的参数【译注:即文件名部分为空】出现,缺省为            "."
       (当前目录)。   选项“   -d   ”使得目录与非目录项同样对待。除非“  -a  ”
       选项出现,文 件名以“.”开始的文件不属“可显示”文件。

man可以查看所有的类型的命令的用法,包括内置命令和外部命令

就可以看到这个命令的详细解释,还有就是使用的格式

除了接命令之外,还可以查看配置文件,普通的文件是不能查看的

[root@localhost ~]# man /etc/sysconfig/network-scripts/ifcfg-ens33

这里就可以观察该配置文件的内容,但是要想修改编辑等,还是使用vim命令来操作

常用的快捷键

在Linux系统中,之前的Windows的快捷键就不合适了,常用的快捷键

  • ctrl + c 停止进程
  • ctrl + l 清屏【等同于clear】 ---- 彻底清理是reset 【 windows的cmd命令cls区分】
  • 上下键 执行过的指令
help + 内置命令

shell命令分为内置和外部,内置的命令,基础功能的命令是直接内嵌在shell中的,系统加载启动之后会随着shell一起加载,常驻在系统中【有点类似上面的daemon process】,这些命令都是built-in命令 — 比如cd、 exit、echo 【 类似print】

内置命令在系统启动的时候就会调入内存; 外部命令只有使用相关的软件的时候才会从硬盘进入内存 【 这个也是数据库设计的思想—使用频率高的单独】

[root@localhost ~]# help cd
cd: cd [-L|[-P [-e]]] [dir]
    Change the shell working directory.
    
    Change the current directory to DIR.  The default DIR is the value of the
    HOME shell variable.
    
  	......
[root@localhost ~]# help ls
bash: help: 没有与 `ls' 匹配的帮助主题。尝试 `help help' 或者 `man -k ls' 或者 `info ls'。

可以看到help只能查看内置指令比如cd,可以看到是change directory,ls指令是不行的

文件类

文件类的指令通常是操作文件,Linux是面向文件的,所以文件类指令使用频度很高

pwd 【显示当前目录绝对路径】

pwd不是password,是print working directory,打印当前工作目录的绝对路径

[root@localhost network-scripts]# pwd
/etc/sysconfig/network-scripts

这里的绝对路径当然是从根路径/开始的,根路径之前分析过各个文件夹的作用和功能

ls[-a/-l] 目录 列出目录内容

ls就是list ,选项中,-a 就是all 【列出所有的文件,包括隐藏的文件】, -l long 长数据串列出,也就是不只是列出目录文件名称,而是包括

文件类型权限 链接数 文件属性 文件大小用byte标识, 建立或者最近修改的时间 名称 list -l 简写为ll

[root@localhost ~]# ls -al
总用量 60
dr-xr-x---. 15 root root 4096 419 15:31 .
dr-xr-xr-x. 17 root root  224 419 2022 ..
-rw-------.  1 root root 2001 419 2022 anaconda-ks.cfg
-rw-------.  1 root root  608 419 15:30 .bash_history
-rw-r--r--.  1 root root   18 1229 2013 .bash_logout
-rw-r--r--.  1 root root  176 1229 2013 .bash_profile
-rw-r--r--.  1 root root  176 1229 2013 .bashrc
drwx------. 14 root root 4096 419 2022 .cache

可以看到列出了所有的文件,包括隐藏的.

cd [参数] 切换到…

这个文件命令也是使用非常平凡,在Windows中也又这个命令,change directory 跳转到指定的目录;

  • cd 绝对路径 切换路径

  • cd 相对路径

  • cd ~ 或者直接 cd 回到家目录 当前登录用户的主目录

  • cd - 回到上一次所在的目录

  • cd … 回到当前目录的上一级目录【这个和前端路径类似,./ …/就是上一级】

  • cd -P 跳转到实际的物理路径,不是快捷方式的路径

前面的两个很常见,后面的也要了解,比如~ … P等 , -也用的多

[root@localhost ~]# cd /etc/sysconfig/network-scripts
[root@localhost network-scripts]# cd ..
[root@localhost sysconfig]# cd ..
[root@localhost etc]# cd -
/etc/sysconfig
[root@localhost sysconfig]# cd -P
[root@localhost ~]# cd /etc
[root@localhost etc]# cd /sysconfig
bash: cd: /sysconfig: 没有那个文件或目录
[root@localhost etc]# cd /usr

这里演示了一下使用,…就是上一级目录,然后/… 就可以打开当前目录下的其他的某个目录【资源路径和前台理解相同】

mkdir + name [-p] 创建新目录

mkdir make directory 建立目录;— 创建一个新目录, make make 创建

-p : 创建多层目录呢

[root@localhost ~]# mkdir cfengStudy/linux
mkdir: 无法创建目录"cfengStudy/linux": 没有那个文件或目录
[root@localhost ~]# mkdir cfengStudy/linux -p

这里创建了二级目录,当然相对路径就是当前所在路径之下;ls -l 就可以看到创建成功

rmdir + 空目录 删除空目录

remove directory 移除空目录, 这里只能删除空的目录,如果是其中有其他的内容,就不能使用这个命令,使用rm

[root@localhost cfengStudy]# ll
总用量 0
drwxr-xr-x. 2 root root 6 419 17:08 linux
[root@localhost cfengStudy]# ^C
[root@localhost cfengStudy]# rmdir linux
[root@localhost cfengStudy]# ll
总用量 0

这里的linux就是空的目录,可以使用这个rmdir删除

touch + 文件名称 创建空的文件

需要注意的是,上面的cd、mkdir、rmdir都是创建的目录,也就是文件夹,这里的touch是创建一个新的文件

touch + 文件 创建一个空的文件

[root@localhost etc]# cd -
/root/cfengStudy/linux
[root@localhost linux]# touch cfengdir.txt
[root@localhost linux]# vim cfengdir.txt
cp [-r] source dest 复制文件或目录到dest

copy 复制,复制source文件到dest;

  • -r 递归复制整个文件夹【所有】
  • \cp 强制覆盖不提示的方法
[root@localhost linux]# ls
cfengdir.txt
[root@localhost linux]# cp cfengdir.txt  ~/cfengStudy
[root@localhost linux]# cd ..
[root@localhost cfengStudy]# ll
总用量 4
-rw-r--r--. 1 root root 130 419 17:40 cfengdir.txt
drwxr-xr-x. 2 root root  26 419 17:30 linux
rm[-r/-f/-v] file 删除文件或者目录

remove ; 递归删除目录中的所有的内容,和上面的rmdir不同,这里就会删除所有的内容,可以进行选择

  • -r : 递归删除所有的内容
  • -f : 强制执行删除,不会提示
  • -v view 显示详细的删除过程
[root@localhost cfengStudy]# rm -rv linux
rm:是否进入目录"linux"? Y
rm:是否删除普通文件 "linux/cfengdir.txt"Y
已删除"linux/cfengdir.txt"
rm:是否删除目录 "linux"Y
已删除目录:"linux"

可以看到这里就是使用了view来显示详细的操作过程,同时因为没有选择force ,所以需要进行确认

mv olepo newpo 移动文件与目录或者重命名

move,移动;上面的copy相当与windows中的复制,这里的mv相当于之前剪切;还可以当重命名使用

  • 重命名 mv oldname newname
  • 移动文件 mv /temp/movefiles /targetFoder
[root@localhost ~]# cd cfengStudy
[root@localhost cfengStudy]# ll
总用量 4
-rw-r--r--. 1 root root 130 419 17:56 linux
[root@localhost cfengStudy]# mv linux cfeng.txt
[root@localhost cfengStudy]# ll
总用量 4
-rw-r--r--. 1 root root 130 419 17:56 cfeng.txt
[root@localhost cfengStudy]# mkdir linux
[root@localhost cfengStudy]# ll
总用量 4
-rw-r--r--. 1 root root 130 419 17:56 cfeng.txt
drwxr-xr-x. 2 root root   6 419 17:57 linux
[root@localhost cfengStudy]# mv cfeng.txt linux
[root@localhost cfengStudy]# ll
总用量 0
drwxr-xr-x. 2 root root 23 419 17:58 linux
[root@localhost cfengStudy]# cd linux
[root@localhost linux]# ll
总用量 4
-rw-r--r--. 1 root root 130 419 17:56 cfeng.txt
[root@localhost linux]# vim cfeng.txt

这里博主使用了很多ll,类似之前的调试了,看看操作是否成功

cat [-n] 文件 查看文件内容

-n 显示所有行的行号,包括空行, 整个命令一般用于一页就可以显示完全的小的文件的内容

[root@localhost linux]# cat cfeng.txt
hello ereryone, my name is Cfeng, I'm now learning linux, and I hope to get many *** the next year. I believe I can finish. Fighting!
[root@localhost linux]# 


[root@localhost linux]# cat -n cfeng.txt
     1	hello ereryone, my name is Cfeng, I'm now learning linux, and i hope to get many offers the next year. I believe I can. Fighting!

可以看到和vim编辑器不同,cat会显示内容之后就退出

more+ 文件内容 内容分屏查看器

more是基于Vim的文本过滤器,可以全屏幕显示文本内容【只是查看文件】,有很多快捷键,和之前的vim有类似之处

  • space 向下翻页
  • Enter 向下一行
  • q 立即离开more,类似之前的命令模式的:q
  • Ctr + F : 向下滚动一屏 B 向上
  • = 输出当前行的行号 :f 当前列的列号
less + 文本内容 比more更强大

也是分屏查看文本内容的指令

  • 空白键 翻页
  • pagedowm 向下 pageup 向上翻页
  • /字串 向下搜寻字串, n下,N上
  • ?字串 向上搜索字串 n上, N下
  • q 离开

其实和vim也是类似的,如果编辑文本使用vim更佳

但是使用SecureCRT的时候,pagedown和pageup会出现问题呢

使用less查看,也会进入一个单独的类似vim的页面,q退出

[root@localhost linux]# less cfeng.txt
echo [-e] 输出内容 输出内容到控制台

echo可以输出内容到控制台,真就hello echo了

  • -e 支持反斜杠控制的字符的转换 也就是转义
比如 \\ \t   \n等


[root@localhost linux]# echo "hello\ncfeng"
hello\ncfeng
[root@localhost linux]# echo -e "hello\ncfeng"
hello
cfeng

不带-e就是不支持转义字符

指令还是挺多的,明天继续介绍🎉

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值