学Linux操作之前不得不了解的知识!!!

Posted 老张学coding

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学Linux操作之前不得不了解的知识!!!相关的知识,希望对你有一定的参考价值。

一、Linux命令基础

1.1 Shell 概述

在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。

1.2 Shell 特点

  • Linux系统中运行的一种特殊程序;
  • 用户内核之间充当“翻译官”;
  • 用户登录Linux系统时,自动加载的一个Shell程序;
  • Bash是Linux系统中默认使用的Shell程序。
  • 文件位于/bin/bash小写

二、Linux命令的分类

2.1、内部命令和外部命令的区别

内部命令外部命令
集成于Shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令Linux系统中能够完成特定功能的脚本文件或二进制程序
属于Shell的一部分属于Shell解释器程序之外的命令
没有单独对应的系统文件每个外部命令对应了系统中的文件
自动载入内存,可以直接使用必须知道其对应的文件位置,由Shell加载后才能执行/bin;/usr/bin;/usr/local/bin等

2.2、如何查看命令是内部命令还是外部命令?

三种方式:
type  命令  ##########下面的提示显示内嵌就是内部命令,显示路径就是外部命令

操作

有一个特例是cd命令:它既是内部命令,又是外部命令

type  cd  ###### 显示是命令类型是内嵌
enable -n cd  ###### 关闭内部命令
type  cd  ###### 显示路径,是外部命令
enable  cd  ###### 解除命令

操作:

三、Linux命令行的格式

命令字    【选项】    【参 数】 

注意:Linux 中英文字符区分大小写

说明:

命令字 #####要进行的操作
1、是整条命令中最关键的一部分
2、唯一确定一条命令

选项 ##### 要实现的功能
短格式选项:使用“-”符号引导,短格式后面一般跟字母,多个单字符选项可以组合在一起使用。
长格式选项:使用“- -”符号引导,长格式后面一般跟单词

参数#####要执行的对象
1、命令字的处理对象
2、可以是文件名、目录(路径)名或者用户名等内容
3、个数可以是零0到多个

四、编辑Linux命令行的辅助操作

Tab键:             #####自动补齐
反斜杠“\\”          #####强制换行
Ctrl + U组合键     #####清空至行首
Ctrl + K组合键     #####清空至行尾
Ctrl + L组合键     #####清屏(clear也行)
Ctrl + C组合键     #####取消本次命令编辑
Ctrl + a组合键     #####切换到行首
Ctrl + e组合键     #####切换到行尾
注意:为了摆脱low逼,答应我,记住他!!!!!!

五、Linux命令帮助的方法

5.1、内部命令帮助用help

说明:适用于内部命令

格式:

help   #####直接help查看内部命令信息

操作:

5.2、命令的“-- help”选项

说明:适用于大多数Linux外部命令

格式:

命令字  --help #####这里命令字如果是内部命令的话,直接会显示无效选项


5.3、使用man命令阅读手册页

格式:

man ls  #####命令+命令字,会进入阅读环境,q或Q退出阅读环境
键盘操作:
#####使用“↑”、“↓”(ENTER)方向键滚动一行文本
#####使用Page Up和Page Down(空格)键翻页
注意:Page Up和Page Down键先要锁住数字才能使用
#####按Q或q键退出阅读环境
#####按“/"键查找内容,n键向下查找,N键向上查

六、路径的概念

6.1、相对路径与绝对路径概述

绝对路径    #####以“/”为起点
相对路径    #####以当前目录为起点

6.2、相对路径的表现形式

表现形式说明示例
直接使用目录名或文件名表示当前工作目录中的子目录、文件的位置zhangsan
以一个点号“.”开头表示以当前的工作目录作为起点./zhangsan
以两个点号“…”开头表示以当前目录的上一级目录(父目录)作为起点…/zhangsan
以“~用户名”形式开头表示以指定用户的宿主目录作为起点~zhangsan
以“~”形式开头表示以当前用户的宿主目录作为起点~

七、命令行提示字符

[root@localhost ~]#
[当前登录系统的用户@主机名称 当前所在的目录]#
$ 表示为普通用户登录
管理员切换与普通用户切换(可以添加用户账号进行转换用户进行测试)
su 切换成管理员
su +用户名

八、基本命令

8.1、切换用户

su  用户名  #切换后所在目录不变
su  -  用户名 #切换后所在目录变成用户家目录
注: ‘-’左右都要有空格

操作:

8.2、主机名设置

8.2.1、查看当前主机名称

格式:

hostname  #查看当前所登录的主机名

操作:

8.2.2、临时设置主机名

格式:

hostname  主机名   #临时设置电脑重启后就没这个主机名

操作:

8.2.3、永久设置主机名

格式:

hostnamectl  set-hostname 主机名 #不用重启立即生效

操作:

第二种永久设置主机名的方法:直接修改/etc/hostname

格式:

vi/etc/hostname  #直接用编辑器进行更改,设置完后需重启才生效
按 i 键删除旧主机名,再输入新主机名(只有第一行有效,,wq保存退出)
init 6  #重启
#注意:设置完重启才能生效,编辑的时候必须内容在第一行

操作:
进入编辑界面

8.3、查看当前系统版本信息(两种查看的对比)

格式:

cat /etc/redhat-release #显示比较简单
cat /etc/*release     #显示比较详细

操作:

8.4、查看当前内核信息

格式:

uname -r#查看内核信息,注意是u+name ,不是un+name

操作:

8.5、修改网卡(要添加)

8.5.1、临时修改网卡IP

格式:

ifconfig ens33 192.168.80.3/24
或
ifconfig ens33 192.168.80.3 netmask 255.255.255.0

补充知识:

ens33是物理网卡,下面可以有很多虚拟网卡,添加虚拟网卡,虚拟网卡可以通信,但是要通过物理网卡

方法:ifconfig ens33:0 192.168.80.40/24

​ ifconfig ens33:1 192.168.80.50/24

8.5.2、永久修改网卡IP

格式:

vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet #设置网卡类型,“Ethernet”表示以太网
DEVICE=ens33 #设置网卡的名称
ONBOOT=yes #设置网卡是否在 Linux 操作系统启动时激活
BOOTPROTO=static #设置网卡的配置方式,“static”表示使用静态IP地址,“dhcp”时表示动态获取地址
IPADDR=192.168.80.3 #设置网卡的 IP 地址
NETMASK=255.255.255.0 #设置网卡的子网掩码
GATEWAY=192.168.80.2 #设置网卡的默认网关地址
DNS1=192.168.80.2 #设置DNS服务器的 IP 地址

8.6、重启网卡

格式:

systemctl restart network #重启所有的网卡(谨慎操作)
ifdown ens33 ; ifup ens33 #重启单个网卡(常用重启操作)
ifdown ens33 #关闭某个网卡
ifup ens33 #启动某个网卡
ifconfig ens33 down #临时禁用某个网卡
ifconfig ens33 up #重新激活某个网卡(不会更新IP地址)

8.7、查看网卡地址

格式:

ifconfig ###############

ip add  ################

操作:

ifconfig查看:

ip add查看:

8.8、添加静态路由条目(要添加)

8.8.1、临时添加路由(重启network后失效)

格式:

方法一:
route add -net 192.168.3.0/24 gw 192.168.8.2 [dev ens33]
-net:指定目标网段的地址
gw:指定下一跳路由器的 IP 地址
dev: 为路由指定的输出接口(可加可不加)
查看路由表条目
route -n
删除静态路由条目
route del -net 192.168.3.0/24

方法二:
ip route add 192.168.15.0/24 via 192.168.80.2 [dev ens33]

8.8.2、永久添加路由(重启network后生效)

方法一:
vi /etc/sysconfig/static-routes(修改配置文件)
any net any gw 192.168.80.2
any net 192.168.3.0/24 gw 192.168.80.2
any net 10.0.0.0 netmask 255.0.0.0 gw 192.168.80.2
any host 192.168.100.100 gw 192.168.80.2
systemctl restart network(修改之后要重启网卡才会生效)
方法二:
vim /etc/sysconfig/network-scripts/route-ens33
default via 192.168.80.2 dev ens33 #默认路由,另一种格式 0.0.0.0/0 192.168.14.254 dev ens33
10.211.6.0/24 via 192.168.80.2 dev ens33
192.168.100.200 via 192.168.14.254 dev ens33

systemctl restart network(修改之后要重启网卡才会生效)

8.9、测试网络连接

8.9.1、ping进行测试

格式:

ping  IP地址 

操作:

8.9.2、traceroute(静态跟踪)

格式:

traceroute  IP地址

操作:

8.9.3、mtr(动态跟踪)

格式:

mtr IP地址

操作:

8.10、开关机,重启系统

8.10.1、重启系统(3种)

格式:

reboot
init 6 #如果是0的话就是关机
shutdown -r  now

这个就不测试了

8.10.2、关机(3种)

格式:

poweroff 
init 0
shutdown -h now
shutdown -h 10 #表示10min之后再关机
shutdown -c    #取消关机

总结:

PS1="[\\e[1;34m][\\u@\\h \\W]\\$[\\e[0m] "

PS1="[\\e[1;35m][[\\e[1;34m]\\u[\\e[1;36m]@[\\e[1;34m]\\h [\\e[1;31m]\\w[\\e[1;35m]][\\e[1;36m]\\$[\\e[0m] "

[\\e[1;35m][ ====> 定义左边的"[" [\\e[1;34m]\\u ====> 定义用户名 [\\e[1;36m]@ ====> 定义"@" [\\e[1;34m]\\h ====> 定义第一个点(.)之前的主机名 [\\e[1;31m]\\w ====> 定义目录完整路径 [\\e[1;35m]] ====> 定义"]" [\\e[1;36m]\\KaTeX parse error: Expected 'EOF', got '#' at position 42: …eter character #̲' in math mode …" [\\e[0m] ====> 一段不显示字串的结束

/etc/resolv.conf
是DNS客户机配置文件,用于设置DNS服务器的IP地址及DNS域名。最多可以指定3个不同的DNS服务器地址,优先使用第一个 DNS 服务器。对该文件所做的修改将会立刻生效。
nameserver 192.168.80.2 #定义DNS服务器的IP地址

注意:此配置文件与网卡配置文件的DNS1参数作用相同,哪个最后修改或重启,系统就使用哪个配置。

以上是关于学Linux操作之前不得不了解的知识!!!的主要内容,如果未能解决你的问题,请参考以下文章

学数据库操作之前不得不了解的知识以及Mysql的基本操作

学数据库操作之前不得不了解的知识以及Mysql的基本操作

规范很重要!!学Shell编程之前不得不了解的一些规则

规范很重要!!学Shell编程之前不得不了解的一些规则

Linux学习心得

程序员不得不学的操作系统知识