3.1  Linux终端介绍、Shell提示符、Bash基本语法

3.1.1  登录LINUX终端

两种终端仿真器:1、GNOME桌面的GHOME Terminal ; 2、KDE桌面的Konsole Terminal

远程连接终端工具: Xshell , CRT 。后期会教你安装。

例1:通过tty命令看到当前所属的虚拟终端

[root@xuegod63 ~]# tty
/dev/pts/

注:shift+ctrl+N 快速打开一个终端。  终端字体放大: shift+ctrl+加号。终端字体缩小:ctrl+减号

例2:不同虚拟终端之间通讯

同时打开两终端,第一个终端执行:

 [root@xuegod63 ~]# echo xuegod > /dev/pts/

在第二个终端查看:有xuegod输出

例3:对所有终端广播消息:系统10分钟后关机。

[root@xuegod63 ~]# shutdown +   #执行此命令后,在其他终端都会收到关机的消息

[root@xuegod63 ~]# shutdown -c   #取消关机

或:

[root@xuegod63 ~]# wall  " The system will be shut down in 10 minutes "   #广播,所有终端都能收到

3.1.2 认识SHELL

Shell俗称壳,它提供了用户与内核进行交互操作的一种接口,它接收用户输入的命令并把它送入内核去执行

Shell实际上是一个命令解释器,它通过解释用户输入的命令并把它传输给系统内核去执行。

Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。

内部命令:在系统启动时就调入内存,是常驻内存的,所以执行效率高

外部命令:是系统软件的功能,用户需要时才从硬盘中读入内存

 

如何区内外部命令?

使用type命令  ,语法 : type   要检测的命令

[root@xuegod63 ~]# type cat

[root@xuegod63 ~]# type pwd

总结: 通过SHELL,我们可以对LINUX实现哪些操作或管理:

例如:

对文件的管理(创建、删除、复制、修改)

1、对用户的管理(添加、删除)

2、相关权限的管理(授权用户对相关文件的管理,比如增删改查)

3、对磁盘的管理(分区、raid、lvm)

4、对软件的管理

5、对网络的管理

3.1.3  shell提示符“#”号与“$”号的区别

[root@xuegod63 ~]#        #表示是root用户登录,管理员账号登陆

[root@xuegod63 ~]# su - mk  #切换到mk普通用户

[mk@xuegod63 ~]$              #表示普通用户登录     

上面各位置对应的内容代表的意思如下:

[root    @  xuegod63     ~                            ]# 

用户名---@---主机名---当前所在目录(~表示当前用户的家目录)---(# root/$普通用户)

3.1.4  认识Bash Shell

查看所有shell类型

[root@xuegod63 ~]# cat /etc/shells

/bin/sh

/bin/bash

/sbin/nologin

/usr/bin/sh

/usr/bin/bash

/usr/sbin/nologin

/bin/tcsh

具体你使用的是哪一个,取决于你的用户配置,也就是说你可以看一下/etc/passwd文件的每一行的最后一个字段

[root@xuegod63 ~]# head  -1 /etc/passwd

root:x:0:0:root:/root:/bin/bash

3.2  基本命令操作

在LINUX中使用一个命令,命令格式如下:

命令 【选项】 【参数】

命令:具体执行的命令,比如pwd,head

选项:会影响到命令的一些形为操作,通常以- --实现

参数:命令作用的对象

3.2.1  基本命令之--ls

作用:查看当前目录下有哪些文件(list)

语法:ls 目录/文件 ,如果什么也不加,那么查看的是当前目录下的内容

常用选项:

命令后面不加任何选项

[root@xuegod63 ~]# ls

-l  列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等,长列表

[root@xuegod63 ~]# ls -l

第一个字符文件类型中:

d:目录文件

l:链接文件

b:块设备文件

c:字符设备文件

p:管道文件

-: 表示普通文件

为什么有的目录文件有不同的颜色呢?

linux系统中不同的颜色代表了不同的文件类型

颜 色

代表内容

举 例

蓝色

目录

/etc

黑色

文件

/etc/passwd

浅蓝色

链接

/etc/grub2.cfg

红色

压缩包

boot.tar.gz

绿色

可执行文件

/etc/init.d/network

黑底黄字

设备文件

/dev/sda

-a  列出目录下所有的文件,包括以“.“开头的隐藏文件(linux下隐藏文件是以 . 开头的,如果存在2个点代表存在着父目录,1个点表示当前目录)        

[root@xuegod63 ~]# ls -a

-d 查看目录(不查看里面的内容)

-S 以文件的大小进行排序

ls -l 和ll 这两个命令是等价的

3.2.2 别名的使用

定义一个别名:

[root@xuegod63 ~]# alias vimens33='vim /etc/sysconfig/network-scripts/ifcfg-ens33'

[root@xuegod63 ~]# vimens33

删除别名:

[root@xuegod63 ~]# unalias vimens33

设置别名永久生效:

==》当前用户

[root@xuegod63 ~]# vim /root/.bashrc  #插入以一下内容:

 alias vimenss33="vim /etc/sysconfig/network-scripts/ifcfg-ens33"

[root@xuegod63 ~]# source /root/.bashrc

[root@xuegod63 ~]# vimenss33

==》全局使用

[root@xuegod63 ~]# vim /etc/bashrc   #在文件最后插入

alias vimenss33="vim /etc/sysconfig/network-scripts/ifcfg-ens33"

[root@xuegod63 ~]# su - mk

上一次登录:四 11月  :: CST 2017pts/ 上

[mk@xuegod63 ~]$ vimenss33

3.2.3 基本命令之--cd

作用:切换目录(change directory)

语法:cd 目录

说明:直接输入cd表示回到当前用户的宿主(家)目录

[root@xuegod63 ~]# cd /etc/sysconfig/network-scripts/
[root@xuegod63 network-scripts]# cd
[root@xuegod63 ~]# cd ~

cd ..  表示返回到上级目录位置,也就是父目录

cd . 表示进入到当前目录

cd -  #表示返回切换前的目录

3.2.4 历史命令之history

命令:history

4个快速查找Linux历史命令的技巧:

方法1: 光标上下键
方法2: ctrl+r -》输入某条命令的关键字-》找出来对应的命令,按右光标键
方法3: !数字   //执行历史命令中第N条命令
方法4:!字符串  //搜索历史命令中最近一个以xxxx字符开头的命令,例如!vim

3.2.5 Linux下快捷键

都是用Ctrl+下面的单词, ^表示Ctrl

^C

       终止前台运行的程序 , 如:ping g.cn 后,想停止按下Ctrl+C
^D

       退出 等价exit
^L

       清屏与clear功能一样

^R

       搜索历史命令,可以利用好关键词
!$  引用上一个命令的最后一个参数

[root@xuegod63
network-scripts]# cat /etc/hosts

[root@xuegod63
network-scripts]# vim !$   #
相当于执行: vim /etc/hosts

补全命令使用tab键,Tab只能补全命令和文件

3.3 系统时间管理

在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟;系统时钟则是指kernel中 的时钟;所有Linux相关指令与函数都是读取系统时钟的设定

当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作

3.3.1 两种时间

查看硬件时间:

[root@xuegod63 etc]# hwclock

查看系统时间:

[root@xuegod63 mnt]# date

时区:

UTC  (Universal Time Coordinated):世界标准时间

GMT (Greenwich Mean Time):格林尼治时间

CST  (China standard Time):中国标准时间

3.3.2 如何修改时间

     date命令相关参数:

     date --help

-s, --set=STRING   把时间设为字符串所描述的时间

例:

%F  完整日期格式,等价于 %Y-%m-%d

[root@xuegod63 ~]# date "+%F"

2018-11-02

%y  年份最后两位数位 (00-99)

%Y  年份

%m   month (01..12)

%d  按月计的日期(例如:01)

%M   minute (00..59)

%H 小时(00-23)

%S  秒(00-60)

[root@xuegod63 ~]# date "+%Y%m%d"   

[root@xuegod63 ~]# date "+%Y-%m-%d %H:%M:%S"    #在年月日之前可以添加自己想要的符号

-- ::

[root@xuegod63 ~]# date "+%Y/%m/%d %H:%M:%S"

// ::

[root@xuegod63 ~]# date "+%Y%m%d %H:%M:%S"

 ::

-d, --date=STRING   #显示由字符串描述的时间,而不是“当前时间”

[root@xuegod63 ~]# date -d "+1 months" +%F

--

3.3.3 使用time命令测试一个命令运行的时间

time 作用:一般用来测量一个命令的运行时间

使用方法:time 在后面直接跟上命令和参数

[root@xuegod63 ~]# time ls -l /etc/

real 0m0.056s

user 0m0.016s

sys  0m0.040s

说明:

real:实际使用时间

user:用户状态使用的时间

sys:内核状态使用的时间

3.4  帮助命令使用

遇到命令不知道添加哪个参数,可以使用命令帮助查看相关介绍,常用的查看帮助信息命令有如下几个

3.4.1  man  命令  :查看手册页或命令描述

[root@xuegod63 ~]# man find

man命令查看帮助时,支持它支持上翻下翻,搜索(直接输入斜线),退出用q

3.4.2  使用-h或--help查看命令选项

[root@xuegod63 ~]# find -h   #不可以执行

[root@xuegod63 ~]# find --help 

3.5  开关机命令及7个启动级别

常用的几个关机,重启命令

shutdown

init

reboot  

poweroff

3.5.1 关机命令之--shutdown

作用:关机,重启,定时关机

语法:shutdown  [选项]

参数:

-r    => 重新启动计算机

-h    => 关机

-h  时间  =>定时关机

例如:

[root@xuegod63 ~]# shutdown -h +      #10分钟之后关机

[root@xuegod63 ~]# shutdown -h :     #指定具体的时间点进行关机

[root@xuegod63 ~]# shutdown -h now      #立即关机

[root@xuegod63 ~]#shutdown -r  :    #: 以后重启

3.5.2  7个启动级别

作用:切换系统运行级别

语法:init  0-6

Linux 7个启动级别:

0 系统停机模式,系统默认运行级别不能设置为0,否则不能正常启动,机器关的

1 单用户模式,root权限,用于系统维护,禁止远程登陆,就像Windows下的安全模式登录

2 多用户模式,没有NFS和网络支持

3 完整的多用户文本模式,有NFS和网络,登陆后进入控制台命令行模式

4 系统未使用,保留一般不用,在一些特殊情况下可以用它来做一些事情。例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置

5 图形化模式,登陆后进入图形GUI模式,X Window系

6 重启模式,默认运行级别不能设为6,否则不能正常启动。运行init 6机器就会重启

[root@localhost ~]# init 0   #关机

[root@localhost ~]# init 3   #进入3级别字符界面

[root@localhost ~]# init 5   #进入5级别图形界面

3.5.3  设置默认的运行界别

centos7不再使用/etc/inittab文件进行默认的启动级别配置,而使用比sysvinit的运行级更为自由的target替代。

第3运行级用multi-user.target替代。

第5运行级用graphical.target替代。

 

设置默认第三启动级别

[root@xuegod63 ~]# systemctl set-default multi-user.target

设置默认第五启动级别

[root@xuegod63 ~]# systemctl set-default graphical.target

[root@xuegod63 ~]#runlevel

3 5   #表示从3级别切换到了5级别

查看当前默认的启动级别

3.6 实战:设置服务器来电后自动开机

进入bios,一般是在开机后出现主板画面是按Delete这个键,部分品牌机可能按F2,F1

选择Integrated Peripharals(外围设备设置)中的SuperIO Device

Integrated  [ˈɪntɪgreɪtɪd]  集成  ; Peripharals  [pəˈrɪfərəl] 外围

将其中的Restore On AC Power Loss选项修改:Power On

若要加电不开机选择Power Off,若要加电之前断电状态选择Last State)

3.7 设置服务器定时开机

Power Management Setup,就进入电源管理设置了

通过回车进入这个设置后,选择Wake Up Event Setup,回车选择Press Enter

找到RTC Alarm([əˈlɑ:m] 报警),将Disabied 更改为Enabled,然后继续回车确定。然后再继续设置时间点和日期

按F10保存,退出。

Linux高级运维 第三章 Linux基本命令操作的更多相关文章

  1. Linux高级运维 第四章 文件的基本管理和XFS文件系统备份恢复

    4.1 Linux系统目录结构和相对/绝对路径 4.1.1系统目录结构 在windows系统中,查看文件先进入相应的盘符,然后进入文件目录 在windows中,它是多根  c:\    d:\   e ...

  2. Linux高级运维 第五章 Vim编辑器和恢复ext4下误删除的文件-Xmanager工具

    5.1  vim主要模式介绍,vim命令模式. 确保系统已经安装了VIM工具 [root@panda ~]# rpm -qf `which vim` [root@panda ~]# rpm -qf ` ...

  3. Linux系统运维笔记(三),设置IP和DNS

    Linux系统运维笔记(三),设置IP和DNS 手工配置静态的IP地址 也就是手工配置IP地址.子网掩码.网关和DNS. vi /etc/sysconfig/network-scripts/ifcfg ...

  4. Linux学习笔记 一 第三章 Linux常用命令

    第三章Linux常用命令 一.文件处理命令 1.命令格式 2.目录处理命令:ls 3.目录处理命令:mkdir 4.文件处理命令: touch

  5. Linux高级运维 第八章 部署docker容器虚拟化平台

    8.1  Docker概述 实验环境: CENTOS7.4-63 64位 Dcoker概述 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到 ...

  6. Linux高级运维 第二章 Linux基本操作和自己动手组装服务器

    2.1  Linux网络相关概念和修改IP地址的方法 2.1.1  网卡的命名规则       Centos 6的网卡命名方式:它会根据情况有所改变而非唯一且固定,在CENTOS6之前,网络接口使用连 ...

  7. Linux云自动化运维第三课

    Linux云自动化运维第三课 一.正则表达式 1.匹配符 * ###匹配0到任意字符 ? ###匹配单个字符 [[:alpha:]] ###匹配单个字母 [[:lower:]] ###匹配单个小写字母 ...

  8. 线上Linux服务器运维安全策略经验分享

    线上Linux服务器运维安全策略经验分享 https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&a ...

  9. 【微学堂】线上Linux服务器运维安全策略经验分享

      技术转载:https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&sn=6d403ab4 ...

随机推荐

  1. java基于BasicPlayer调用 播放音乐

    无聊中想想用java调用下听音乐的api.晚上很多文章用的比较老大方法了,都是用原生的代码写,而且不支持mp3格式,BasicPlayer第三方包提供了很好的api调用,简单的3行代码就可以调用mp3 ...

  2. Discuz3.4-SSRF-从触发点到构造payload

    目录 SSRF逆向分析 0x00 前言 0x01 收集情报 0x02 尝试逆向找到触发点 0x03 尝试构造payload 0x04 总结 SSRF逆向分析 0x00 前言 之前有复现过一些漏洞,但是 ...

  3. 企业私有源代码上传github致入侵之大疆案判决了

    事件简单回顾: 1.2017年8月28日,大疆宣布“大疆威胁识别奖励计划”,最高3万美元: 2.然而在此之前,大疆农业事业部某员工将企业私有源代码上传到了github: 3.就职于大疆竞对公司Depa ...

  4. UiPath实践经验总结(一)

    用UiPath做RPA也有一段时间了,初上阵不久,遇到过不少大大小小的坑.以下列出一些心得体会,望能抛砖引玉,与同行进行更多交流. 1. 日志策略:将UiPath Robot的Logging Leve ...

  5. 全球第一免费开源ERP Odoo仓存功能模块深度应用(一)

    基本功能 库位 库位是一个逻辑存货区,可以是一个物理库区,可以是一个货架.货架上的一个货位.库位可以有子库位 库位有虚拟库位和实际库位,实际库位是实际存放货物的库位,虚拟库位是因复式库存记账而虚构的库 ...

  6. Android SQLite 数据库学习

    SQLite 数据库简介 SQLite 是一个轻量级数据库,它是D. Richard Hipp建立的公有领域项目,在2000年发布了第一个版本.它的设计目标是嵌入式的,而且占用资源非常低,在内存中只需 ...

  7. C语言实现循环队列

    今日在处理数据存储的问题中,数据占用的空间较大,在询问之下,提及循环队列. 没有学习过的我,想想就是头大,只能慢慢从网上找资料,一个字母一个字母的敲,最后,还是慢慢的对队列有了一些理解 对于循环队列有 ...

  8. Math类中round、ceil和floor方法的功能

    Java中的Math工具类用来完成除+.-.*./.%等基本运算以外的复杂运算,位于java.lang包下,Math类的构造器全是私有的(private),因此无法创建Math类的对象,Math类的方 ...

  9. Oracle11g创建表空间、创建用户、角色授权、导入导出表以及中文字符乱码问题

    [转载]原文地址:https://www.cnblogs.com/bjh1117/p/6605037.html 前提:本机已经安装了Oracle11g数据库. 需求:使用PL SQL数据库连接工具操作 ...

  10. RIpng配置(GNS3)(第九组)

    一.拓扑图 二.路由器配置 路由器R1的配置(配置RIP静态路由协议,路由器对应接口配置相对应的ipv6地址,并给每个接口配置RIP 1 enable) 路由器R2的配置(配置RIP静态路由协议,路由 ...