• 第三章 Linux基本命令操作


    第三章  Linux基本命令操作

    ¨  本节所讲内容:

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

    ¨  3.2  基本命令的使用:ls、pwd、cd、history

    ¨  3.3  查看系统和BIOS硬件时间

    ¨  3.4  Linux如何获得帮助

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

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

    ¨  3.7 实战:设置服务器定时开机

     

    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/0

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

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

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

     

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

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

     

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

     

    [root@xuegod63 ~]# shutdown +10   #执行此命令后,在其他终端都会收到关机的消息
    
    [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
    
    cat 是 /usr/bin/cat
    
    [root@xuegod63 ~]# type pwd
    
    pwd 是 shell 内嵌

     

    总结: 通过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
    
    总用量 8
    
    -rw-------. 1 root root 1680 9月  19 12:16 anaconda-ks.cfg
    
    -rw-r--r--. 1 root root 1728 9月  19 12:55 initial-setup-ks.cfg
    
    drwxr-xr-x. 2 root root    6 9月  19 13:05 公共
    
    drwxr-xr-x. 2 root root    6 9月  19 13:05 模板
    
    drwxr-xr-x. 2 root root    6 9月  19 13:05 视频

     

    第一个字符文件类型中:

    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
    
    .                .bash_profile  .dbus                 .mozilla  视频  桌面
    
    -d 查看目录(不查看里面的内容)
    
    [root@xuegod63 ~]# ls -ld /root/
    
    dr-xr-x---. 15 root root 4096 11月 15 21:37 /root/

     

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

     

    [root@xuegod63 ~]# ls -lS /root/

    总用量 8

     

    -rw-r--r--. 1 root root 1728 9月  19 12:55 initial-setup-ks.cfg
    
    -rw-------. 1 root root 1680 9月  19 12:16 anaconda-ks.cfg
    
     
    
    ls -l 和ll 这两个命令是等价的
    
    [root@xuegod63 ~]# ll /etc/passwd
    
    -rw-r--r--. 1 root root 2053 9月  19 12:57 /etc/passwd
    
    [root@xuegod63 ~]# ls -l /etc/passwd
    
    -rw-r--r--. 1 root root 2053 9月  19 12:57 /etc/passwd
    
    [root@xuegod63 ~]# type ll
    
    ll 是 `ls -l --color=auto' 的别名

     

    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  #插入以一下内容:
    
    8 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月 16 10:22:03 CST 2017pts/1 上
    
    [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 . 表示进入到当前目录

    [root@xuegod63 ~]# pwd
    
    /root
    
    [root@xuegod63 ~]# cd ..
    
    [root@xuegod63 /]# pwd
    
    /
    
    [root@xuegod63 /]# cd .
    
    [root@xuegod63 /]#

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

    [root@xuegod63 /]# cd /etc/sysconfig/network-scripts/
    
    [root@xuegod63 network-scripts]# 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   把时间设为字符串所描述的时间

    : [root@xuegod63 ~]# date -s "2018-11-2 22:30"
    
    2018年 11月 02日 星期五 22:30:00 CST
    
    %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"   
    
    20181102
    
    [root@xuegod63 ~]# date "+%Y-%m-%d %H:%M:%S"    #在年月日之前可以添加自己想要的符号
    
    2018-11-02 22:34:27
    
    [root@xuegod63 ~]# date "+%Y/%m/%d %H:%M:%S"
    
    2018/11/02 22:34:38
    
    [root@xuegod63 ~]# date "+%Y%m%d %H:%M:%S"
    
    20181102 22:35:03
    
     
    
    -d, --date=STRING   #显示由字符串描述的时间,而不是“当前时间”
    
    [root@xuegod63 ~]# date -d "+1 months" +%F
    
    2018-12-02

     

    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      #10分钟之后关机
    
    [root@xuegod63 ~]# shutdown -h 23:30     #指定具体的时间点进行关机
    
    [root@xuegod63 ~]# shutdown -h now      #立即关机
    
    [root@xuegod63 ~]#shutdown -r  22:22    #22:22 以后重启

     

    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级别

    查看当前默认的启动级别

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

     

    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保存,退出。

    总结:
    3.1  Linux终端介绍 Shell提示符 Bash Shell基本语法
    3.2  基本命令的使用:ls、pwd、cd、history
    3.3  查看系统和BIOS硬件时间
    3.4  Linux如何获得帮助
    3.5  开关机命令及7个启动级别
    3.6 实战:设置服务器来电后自动开机
    3.7 实战:设置服务器定时开机

     

     

  • 相关阅读:
    图片尺寸批量resize的matlab并行代码
    Java使用QRCode.jar生成与解析二维码
    MySQL求两表的差集(非交集)
    sql笔记
    Oracle创建表空间创建用户授权
    身份证前6位地址码+码表+MySQL
    Jenkins时区设置为北京时间
    Oracle 使用MERGE INTO 语句 一条语句搞定新增编辑
    Oracle dd-m月-yy转yyyy-mm-dd
    docker 使用笔记
  • 原文地址:https://www.cnblogs.com/xuegod/p/9839737.html
Copyright © 2020-2023  润新知