Linux基本操作与命令
一、命令模式下命令的执行
1、命令行提示字符
root 表示当前登录系统的用户
localhost 表示主机名称
~ 表示当前所在的目录
# 表示为管理员登录
$ 表示为普通用户登录
2、执行命令
概念
[root@localhost ~]# command [-options] parameter1 parameter2
(命令) (选项) (参数1) (参数2)
上述命令详细说明
- 一行命令中第一个输入的部分绝对是命令(command)或可执行文件(如shell脚本)
- command为命令的名称,例如变换工作目录的命令为cd等
- 中括号[]并不存在实际的命令中,表示可选的,如果加入选项时,通常选项前会带 - 号,如-h;有时候选项会使用全名 如 --help;
- parameter1 parameter2为依附在选项后面的参数,或者是command的参数
- 命令,选项,参数之间用空格分开,不关空几格,shell默认为一个空格
- 按下回车键后,该命令就立刻执行,回车键代表着一行命令的开始启动
- 命令太长的时候可以用反斜杠(\)来转义回车键,使命令连续下一行
- 在linux中,英文的大小写是不一样的,比如cd与CD不同
例如
列出自己家目录(~)下所有的隐藏文件与问文件属性
以上三个命令执行结果一样,可以参考上面的说明
例如
只是改变大小写,该命令就不存在了,因此,千万记住要区分大小写
3、基础命令的操作
-
显示日期与时间的命令(date)
如果在命令行上想要知道当前linux的系统时间,在命令行上直接输入date
注:【+%Y%m%d】就是date命令的一些参数,如何查看这些参数,下面会讲 -
显示日历的命令(cal)
基本上cal这个命令的语法为cal [month] [year]
如果想要知道2019年10的日历
cal 10 2019
-
简单好用的计算器(bc)
+:加法
-:减法
*:乘法
/:除法
^:指数
%:余数
切换用户 —— su
su 用户名 #切换后所在目录不变
su - 用户名 #切换后所在目录变成用户家目录
查看当前主机的完整名称 —— hostname
hostname
临时设置主机名
hostname 主机名
永久设置主机名
hostnamectl set-hostname 主机名
或
vi /etc/hostname(设置完后需重启系统才生效)
按i键先删除旧主机名,再输入新主机名(只有第一行有效)
按ESC键,再按SHIFT + “:” 组合键,输入 wq ,再按回车键退出
查看当前系统版本信息
cat /etc/redhat-release
或
cat /etc/*release
查看当前内核版本
uname -r
临时修改网卡IP
ifconfig ens33 自己网卡IP/24
或
ifconfig ens33 自己网卡IP netmask 255.255.255.0
永久修改网卡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 地址
重启网卡
systemctl restart network #重启所有的网卡
ifdown ens33 ; ifup ens33
ifdown ens33 #关闭某个网卡
ifup ens33 #启动某个网卡
ifconfig ens33 down #临时禁用某个网卡
ifconfig ens33 up #重新激活某个网卡(不会更新IP地址)
查看网卡地址
ifconfig
或
ip a
添加静态路由条目
临时添加路由(重启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]
永久添加路由(重启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
测试网络连接
ping
traceroute (静态跟踪)
mtr (动态跟踪)
重启系统
reboot
init 6
shutdown -r now
关机
poweroff
init 0
shutdown -h now
shutdown -c
二、Shell
-
Linux系统中运行的一种特殊程序
-
在用户和内核之间充当“翻译官”
-
用户登录Linux系统时,自动加载一个Shell程序
-
Bash是Linux系统中默认使用的Shell程序(文件位于/bin/bash)
三、Linux命令的分类
内部命令与外部命令的区别
内部命令 | 外部命令 |
---|---|
集成与Shell解释器程序内部的一些特殊指令,也成为内建(Built-in)指令 | Linux系统中能够完成特定功能的脚本文件或二进制程序 |
属于Shell的一部分 | 属于Shell解释器程序之外的命令 |
没有单独对应的系统文件 | 每个外部命令对应了系统中的一个文件 |
自动载入内存,可以直接使用 | 必须知道其对应的文件位置,由Shell加载后才能执行/bin,/usr/bin,usr/local/bin等 |
Linux命令行的格式
通用的命令行使用格式(英文字符区分大小写)
命令字 [选项] [参数]
(操作) 命令拓展功能功能 命令要执行的对象
-
命令字
是整条命令中最关键的一部分 唯一确定一条命令
-
选项
短格式选项:使用“-”符号引导(多个字符选项可以组合在一起使用)(-a -l -h)(-alh ) 长格式选项:使用“--”符号引导(--完整单词)
-
参数
命令字的处理对象 可以是文件名、目录(路径)名或用户名等内容 个数可以是零到多个
三、Linux命令帮助
编辑Linux命令行的辅助操作
Tab建:自动补齐
反斜杠“\”:强行换行
Ctrl+U组合键:清空至行首
Ctrl+K组合键:清空至行尾
Ctrl+L组合键:清屏
Ctrl+C组合键:取消本次命令编辑
Ctrl+a组合键:切换到行首
Ctrl+e组合键:切换到行尾
获得命令帮助的方法
-
内部命令help
查看Shell内部命令的帮助信息
-
命令的“- -help”选项
适用于大多数Linux外部命令
-
使用man命令阅读手册页
使用“↑”“↓”(ENTER)方向键滚动一行文本 使用 Page Up和Page Down(空格)键翻页 按Q或者q键退出阅读环境 按“\”键查找内容,n键向下查找,N键向上查找