日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

linux終端介紹與Bash Shell應用

Linux終端介紹

Linux終端有兩種,分別是桌面終端和遠程終端,桌面終端根據不同的桌面分為GNOME桌面的GNOME Terminal、KDE桌面的Konsole Terminal。而遠程終端有基于SSH2協議的SecureCRT、XShell。

GNOME Ternimal

Linux系統基本操作以及常用命令

 

SecureCRT

Linux系統基本操作以及常用命令

 

如果想要知道當前使用是哪個終端,可以使用tty命令查看終端

Linux系統基本操作以及常用命令

 

其中/dev/pts/1表示第一個終端,/dev/pts/2表示第二個終端。

如果你在SecureCRT上也登錄了centos7.8,那么當輸入tty命令時將會輸出/dev/pts/3,即表示第三個終端

Linux系統基本操作以及常用命令

 

在操作終端的過程中有一些常用的快捷鍵

Ctrl+Shift+N:快速打開一個終端

Ctrl+Shift+ +:終端字體放大

Ctrl+Shift+ -:終端字體減小

在一臺服務器的多個終端之間是可以進行通訊。例如可以使用echo message > 終端 發送指定的消息。

首先同時打開兩個終端/dev/pts/1和/dev/pts/2然后在/dev/pts/1上使用命令echo ittimeline.net >/dev/pts/2時,第二個終端/dev/pts/2收到了消息ittimeline.net

Linux系統基本操作以及常用命令

 

shutdown命令用于關機,該命令必須使用root用戶執行,普通用戶(例如guanglei)無法執行該命令。

使用命令shutdown +10 實現十分鐘后關機,該命令會向所有的終端廣播消息

Linux系統基本操作以及常用命令

shutdown +10

其他終端也收到10分鐘之后關機的消息

Linux系統基本操作以及常用命令

 

如果想要終止可以使用shutdown -c取消關機,在輸入該命令之前需要使用Ctrl+c中斷命令shutdown +10的執行。

Linux系統基本操作以及常用命令

 

當取消關機時,該命令也會發送廣播消息給所有的終端

Linux系統基本操作以及常用命令

 

如果想要通過終端廣播消息,可以使用命令wall ”message“實現

當在終端設備/dev/pst/1上使用命令wall "boss is comming"時,此時/dev/pst/2和/dev/pst/3都收到了該消息

Linux系統基本操作以及常用命令

 


Linux系統基本操作以及常用命令

wall message

Linux Shell 介紹

Linux Shell提供了用戶與內核進行交互操作的一種接口,它接收用戶輸入的命令并提交到內核去執行。Shell實際上是一個命令解釋器,它通過解釋用戶輸入的命令并提交給內核執行。Shell有自己的編程語言,它允許用戶編寫由Shell命令組成的程序。Shell編程語言具有常用編程語言(C/C++)的許多特點,比如說它也有循環結構和分支控制等等,用這種編程語言編寫的Shell程序與其他應用程序具有同樣的效果。

Shell執行命令的流程當用戶輸入命令時會提交到Shell,Shell會判斷該命令是否是內部命令,如果是內部命令,則直接執行系統內核對應的功能調用,如果是外部命令,Shell會在系統中查找該命令對應的執行程序并加載到內存中執行。

Linux系統基本操作以及常用命令

 

內部命令是在系統啟動時就加載到內存中,是常駐內存,所以執行效率高。外部命令是系統軟件的功能,用戶需要時才會從硬盤加載到內存中。

可以通過type command來查看當前執行的命令是內部命令還是外部命令。

例如當執行命令type pwd時輸出pwd是shell 內嵌,即內部命令。而當執行命令type cat時輸出cat 命令對應的路徑/usr/bin/cat,即外部命令。

[root@ittimeline ~]# type pwd
pwd 是 shell 內嵌
[root@ittimeline ~]# type cat
cat 是 /usr/bin/cat

后期在進行Linux系統管理(文件目錄、用戶、權限、磁盤、軟件、網絡等等)都是通過Shell實現的。

Shell 提示符

當以root用戶登錄系統時,Shell命令提示會顯示[root@ittimeline ~]#

[root@ittimeline ~]# 

而當以普通用戶guanglei登錄時,Shell命令提示符會顯示[guanglei@ittimeline ~]$

[guanglei@ittimeline ~]$ 

因此如果在Shell命令提示符中看到$表示該用戶是普通用戶,如果看到#表示該用戶是系統管理員root用戶。

如果想要從root用戶切換到普通用戶guanglei,可以使用su - guanglei

[root@ittimeline guanglei]# su - guanglei
上一次登錄:二 6月 23 12:46:18 CST 2020pts/3 上
[guanglei@ittimeline ~]$ whoami
guanglei

Shell命令提示符[root@ittimeline ~]#表示的含義[用戶名@主機名 當前所在目錄],其中~表示用戶的家目錄,而#表示root用戶,$表示普通用戶。

Bash Shell

如果想要知道系統支持哪些Shell類型,可以通過命令cat /etc/shells查看

[root@ittimeline ~]# cat /etc/shells 
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/bin/tcsh
/bin/csh

如果想要知道當前系統具體使用的是哪種Shell,取決于用戶配置,可以通過命令head -1 /etc/passwd查看/etc/passwd文件的第一行

[root@ittimeline ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash

通過命令可以查看到當前root用戶使用的Shell是Bash Shell。

Linux基本命令常用操作

Linux命令組成

Linux命令由命令、【選項】和【參數】三部分組成,其中命令就是具體執行的命令,例如pwd,whoami,head等等,而選項是影響到命令的一些行為操作,通常是以-或者是--實現,參數就是命令作用的對象。

以命令ls -al /home/guanglei為例,其中ls命令查看文件列表,-a選項是顯示所有文件,包含隱藏文件(.開頭的文件就是隱藏文件),l表示文件的詳細信息。參數/home/guanglei 就是命令作用的路徑。

[root@ittimeline ~]# ls -al /home/guanglei/
總用量 32
drwx------. 15 guanglei guanglei 4096 6月  23 09:48 .
drwxr-xr-x.  3 root     root       22 6月  23 07:29 ..
-rw-------.  1 guanglei guanglei  215 6月  23 12:52 .bash_history
-rw-r--r--.  1 guanglei guanglei   18 4月   1 10:17 .bash_logout
-rw-r--r--.  1 guanglei guanglei  193 4月   1 10:17 .bash_profile
-rw-r--r--.  1 guanglei guanglei  231 4月   1 10:17 .bashrc
drwx------. 14 guanglei guanglei 4096 6月  23 07:41 .cache
drwxr-xr-x. 14 guanglei guanglei  261 6月  23 09:48 .config
drwx------.  3 guanglei guanglei   25 6月  23 07:35 .dbus
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Desktop
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Documents
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Downloads
-rw-------.  1 guanglei guanglei   16 6月  23 07:35 .esd_auth
-rw-------.  1 guanglei guanglei  620 6月  23 09:48 .ICEauthority
drwx------.  3 guanglei guanglei   19 6月  23 07:35 .local
drwxr-xr-x.  4 guanglei guanglei   39 6月  23 07:20 .mozilla
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Music
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Pictures
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Public
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Templates
drwxr-xr-x.  2 guanglei guanglei    6 6月  23 09:48 Videos

ls命令詳解

ls命令的作用查看當前目錄下有哪些文件,其語法就是ls 目錄/文件,如果不加路徑參數,默認就是查看當前路徑下的內容

例如這里使用普通用戶guanglei登錄后查看/home/guanglei目錄下的文件列表

[guanglei@ittimeline ~]$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

使用pwd命令可以查看當前用戶所在的路徑

[guanglei@ittimeline ~]$ pwd
/home/guanglei

使用 ls -l 選項可以查看當前路徑文件列表的詳細信息

[guanglei@ittimeline ~]$ ls -l
總用量 0
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Desktop
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Documents
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Downloads
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Music
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Pictures
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Public
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Templates
drwxr-xr-x. 2 guanglei guanglei 6 6月  23 09:48 Videos

這里為了更加具體的了解文件的詳細信息,首先使用命令cd Documents切換到Documents目錄下,然后使用touch file.txt創建一個空的文本文件,接下來使用命令ls -l file.txt查看file.txt的文件詳細信息

[guanglei@ittimeline ~]$ cd Documents/
[guanglei@ittimeline Documents]$ touch file.txt
[guanglei@ittimeline Documents]$ ls -l file.txt
-rw-rw-r--. 1 guanglei guanglei 0 6月  23 13:30 file.txt

ls -l file.txt命令輸出如下

-rw-rw-r--. 1 guanglei guanglei 0 6月  23 13:30 file.txt
  • -表示文件類型d表示目錄文件l表示鏈接文件b表示塊設備文件c表示字符設備文件p表示管道文件-表示普通文件
  • rw-rw-r--.表示文件的權限
  • 1 表示鏈接個數
  • guanglei 表示文件所有者
  • guanglei 用戶所屬組名
  • 0 表示文件大小
  • 6月 23 13:30 表示文件上次修改的日期和時間
  • file.txt表示文件名稱

使用命令echo "hello world" >file.txt往file.txt寫入字符串helloworld,然后再次使用ls -l file.txt查看文件詳細信息。

[guanglei@ittimeline Documents]$ echo "hellworld" > file.txt 
[guanglei@ittimeline Documents]$ ls -l file.txt 
-rw-rw-r--. 1 guanglei guanglei 10 6月  23 13:35 file.txt

Linux下/dev目錄是用于存放各種設備文件,如果想要查看不同類型的文件,可以使用命令ls -l /dev查看,CentOS系統中不同的顏色表示不同的文件類型。

顏色代表內容舉例藍色目錄/etc黑色文件/etc/passwd淺藍色鏈接/etc/grub2.cfg紅色壓縮包boot.tar.gz綠色可執行文件/etc/init/d/network黑底黃字設備文件/dev/sda

ls -a選項用于列出指定目錄下的所有文件,包括以.開頭的隱藏文件,如果存在兩個點代表著父目錄,一個點表示當前目錄。

ls -a 查看/home/guanglei/下的所有文件

[guanglei@ittimeline ~]$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
[guanglei@ittimeline ~]$ ls -a
.   .bash_history  .bash_profile  .cache   .dbus    Documents  .esd_auth      .local    Music     Public     Videos
..  .bash_logout   .bashrc        .config  Desktop  Downloads  .ICEauthority  .mozilla  Pictures  Templates

ls -ld 查看指定目錄的詳細信息

查看/root目錄的詳細信息

[guanglei@ittimeline ~]$ ls -ld /root/
dr-xr-x---. 5 root root 221 6月  23 12:58 /root/

查看/home/guanglei目錄的詳細信息

[guanglei@ittimeline ~]$ ls -ld /home/guanglei/
drwx------. 15 guanglei guanglei 4096 6月  23 09:48 /home/guanglei/

ls -S 查看文件目錄,并且以文件的大小排序(默認是降序)

查看/root目錄,并且按照文件大小排序

[root@ittimeline ~]# ls -lS /root/
總用量 8
-rw-r--r--. 1 root root 1852 6月  23 07:33 initial-setup-ks.cfg
-rw-------. 1 root root 1804 6月  23 07:29 anaconda-ks.cfg

alias命令詳解

在Shell中,ls -l和ll執行的結果是等價的

[root@ittimeline ~]# ll
總用量 8
-rw-------. 1 root root 1804 6月  23 07:29 anaconda-ks.cfg
-rw-r--r--. 1 root root 1852 6月  23 07:33 initial-setup-ks.cfg
[root@ittimeline ~]# ls -l
總用量 8
-rw-------. 1 root root 1804 6月  23 07:29 anaconda-ks.cfg
-rw-r--r--. 1 root root 1852 6月  23 07:33 initial-setup-ks.cfg

當使用type命令查看ll時輸出結果顯示ll是ls -al的別名

[root@ittimeline ~]# type ll
ll 是 `ls -l --color=auto' 的別名

那么如何創建一個別名呢?這里以常用的編輯網卡配置為例,CentOS7中編輯網卡配置,通常會使用命令vim
/etc/sysconfig/network-scripts/ifcfg-ens33來編輯網卡配置文件ifcfg-ens33。為了實現同樣的作用,我們可以使用alias命令來創建一個別名,其格式類似于編程語言中變量的聲明,alias 變量名=變量值,其中變量值需要使用""包含起來,而變量名通常是英文開頭。

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

當別名創建完成后就可以使用vimens33來快速編輯網卡配置文件ifcfg-ens33

[root@ittimeline ~]# vimens33
  
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="f474f5ec-6f09-43b5-bfd9-88750562441f"
DEVICE="ens33"
ONBOOT="yes"
IPV6_PRIVACY="no"            

如果想要刪除別名,可以使用命令unalias 命令別名。

[root@ittimeline ~]# unalias vimens33
[root@ittimeline ~]# vimens33
bash: vimens33: 未找到命令...

而alias命令創建的別名在服務器重啟后會丟失。

如果想要別名永遠有效,可以使用命令vim .bashrc來編輯.bashrc用戶配置文件,將alias定義的別名存儲在該文件中。

在使用vim .bashrc編輯.bashrc文件時,此時vim處于命令模式,可以按i鍵進入編輯模式。

[root@ittimeline ~]# vim .bashrc 

當編輯文件時,系統已經存在如下別名

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

然后將ens33的別名追加到已有別名的后面

Linux系統基本操作以及常用命令

 

別名追加完成以后輸入:wq保存.bashrc修改的內容,然后使用命令source .bashrc重新加載配置,需要注意的是該命令只在當前終端刷新.bashrc的配置。如果是其他已經打開的終端無法使用,則需要再次使用source .bashrc重新加載配置文件

[root@ittimeline ~]# source .bashrc 

剛才編輯的.bashrc文件位于/root目錄下,因此別名vimens33只會對root用戶有效,普通用戶(例如guanglei)則是無效的

Last login: Tue Jun 23 13:26:10 2020 from 192.168.0.115
[guanglei@ittimeline ~]$ vimens33
bash: vimens33: 未找到命令...
[guanglei@ittimeline ~]$ 

如果想要所有用戶都能使用別名(例如ens33),則需要在修改/etc目錄下的bashrc文件。

[root@ittimeline ~]# vim /etc/bashrc

在使用vim編輯該文件時,首先下滑到文件的末尾,然后按i鍵由命令模式切換到編輯模式,然后添加別名vimens33的配置

alias vimens33="vim /etc/sysconfig/network-scripts/ifcfg-ens33"
Linux系統基本操作以及常用命令

添加vimens33配置

配置添加完成后按esc退出編輯模式,然后按:wq保存文件,再使用命令source /etc/bashrc重新加載配置。

[root@ittimeline ~]# source /etc/bashrc 

然后重新使用普通用戶(guanglei)登錄,輸入別名vimens33便可以實現快速修改網卡配置

[guanglei@ittimeline ~]$ vimens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="f474f5ec-6f09-43b5-bfd9-88750562441f"
DEVICE="ens33"
ONBOOT="yes"
IPV6_PRIVACY="no"
~                       
Linux系統基本操作以及常用命令

通過ens33別名修改網卡

cd命令詳解

cd命令用于切換目錄,其用法就是cd 目錄

可以使用cd ~切換到用戶的家目錄

root用戶使用cd ~和cd切換到家目錄

[root@ittimeline ~]# cd ~
[root@ittimeline ~]# pwd
/root
[root@ittimeline ~]# cd
[root@ittimeline ~]# pwd
/root

普通用戶guanglei使用cd ~和cd切換到家目錄

[guanglei@ittimeline ~]$ cd ~
[guanglei@ittimeline ~]$ pwd
/home/guanglei
[guanglei@ittimeline ~]$ cd
[guanglei@ittimeline ~]$ pwd
/home/guanglei

cd ..可以切換到上一級目錄

guanglei用戶切換到/home/guanglei的上一級目錄

[guanglei@ittimeline ~]$ pwd
/home/guanglei
[guanglei@ittimeline ~]$ cd ..
[guanglei@ittimeline home]$ pwd
/home

cd .進入到當前目錄

[guanglei@ittimeline home]$ pwd
/home
[guanglei@ittimeline home]$ cd .
[guanglei@ittimeline home]$ pwd
/home

cd - 返回切換前的目錄

[guanglei@ittimeline home]$ pwd
/home
[guanglei@ittimeline home]$ cd -
/home/guanglei
[guanglei@ittimeline ~]$ cd -
/home

history命令詳解

在Shell中可以通過上下鍵來切換之前輸入的命令,除此以外可以使用history獲取輸入的歷史命令

[guanglei@ittimeline home]$ history
    1  ifconfig
    2  tty
    3  tty
    4  echo ittimeline.net >/dev/pts/2
    5  shutdown +10
    6  clear
    7  tty
    8  clear
    9  tty
   10  walk "boss is coming"
   11  whoami
   12  exit
   13  su root
   14  su - root
   15  su root
   16  eixt
   17  exit
   18  clear
   19  su guanglei
   20  clear
   21  clear
   22  su -guanglei
   23  clear
   24  su - guanglei
   25  ls
   26  pwd
   27  ls -l
   28  cd Documents/
   29  touch file.txt
   30  ls -l file.txt
   31  echo "hellworld" > file.txt 
   32  ls -l file.txt 
   33  ls /dev
   34  clear
   35  ls -l /dev
   36  clear
   37  cd ../
   38  pwd
   39  clear
   40  ls
   41  ls -a
   42  ls /
   43  clear
   44  ls .
   45  ls 
   46  ls -ld /root/
   47  ls -ld /home/guanglei/
   48  ls /home/guanglei/
   49  ls -l /home/guanglei/
   50  ls -ld /home/guanglei/
   51  pwd
   52  ls -lS /root/
   53  clear
   54  vimens33
   55  clear
   56  cd ~
   57  pwd
   58  cd
   59  pwd
   60  cd ..
   61  pwd
   62  cd -
   63  pqd
   64  clear
   65  pwd
   66  cd .
   67  pwd
   68  cler
   69  clear
   70  history

如果想要在history命令的輸出結果中查找歷史的命令,可以使用如下方法:

  1. 光標上下鍵切換輸入過的命令
  2. ctrl+r 進入命令搜索模式, 輸入某條命令的關鍵字,找出來對應的命令,然后按右方向鍵并回車就能夠執行命令
  3. !num 執行指定編號的歷史命令,例如!26就會執行history歷史命令的第二十六條命令
[guanglei@ittimeline network-scripts]$ !26
pwd
/etc/sysconfig/network-scripts
  1. !字符串 會搜索歷史命令中最近一個以xxx字符串開頭的命令,例如 !who

當輸入!who,history會匹配到whoami命令

[guanglei@ittimeline network-scripts]$ !who
whoami
guanglei

Linux常用快捷鍵

  1. Ctrl+c (^C)終止前臺運行程序

例如在使用ping baidu.com 檢查網絡連接時,如果網絡通常,則會一直輸出接收的數據包信息,如果想要此時停止接收數據,則此時可以使用快捷鍵Ctrl+c來終止前臺運行的ping程序

[guanglei@ittimeline network-scripts]$ ping baidu.com
PING baidu.com (39.156.69.79) 56(84) bytes of data.
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=1 ttl=50 time=27.7 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=2 ttl=50 time=27.8 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=3 ttl=50 time=29.7 ms
64 bytes from 39.156.69.79 (39.156.69.79): icmp_seq=4 ttl=50 time=28.2 ms
^C
--- baidu.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 27.797/28.414/29.781/0.833 ms
[guanglei@ittimeline network-scripts]$ 
  1. Ctrl+d(^d) 退出,等價于exit在遠程連接終端時如果想要退出當前登錄的賬戶,可以使用快捷鍵Ctrl+d來退出,也可以使用exit命令退出當前登錄的賬戶。使用Ctrl+d退出當前登錄用戶使用exit命令退出當前登錄用戶
  2. Ctrl+l 清屏,等價于clear命令如果在終端上執行某條命令時的輸出結果占滿屏幕,此時可以使用快捷鍵Ctrl+l或者是clear命令來實現清除屏幕的輸出結果。

使用clear或者快捷鍵Ctrl+L清除屏幕

Linux系統基本操作以及常用命令

 

  1. Ctrl+a 跳到命令行的開頭
  2. Ctrl+e 跳到命令行的結尾
  3. Ctrl+u 將光標處到命令行開頭的內容刪除
  4. Ctrl+k 將光標處到命令行末尾的內容刪除
  5. Ctrl+r 搜索歷史命令,可以利用好關鍵詞
  6. !$ 引用上一個命令的最后一個參數

當首先執行cat /etc/hosts后,再執行vim !$后,上一個命令的最后一個參數/etc/hosts會傳入到vim命令中并被得到執行

[guanglei@ittimeline ~]$ cat /etc/hosts
  7.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
[guanglei@ittimeline ~]$ vim !$
vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
~                                                                                        
  1. Tab命令補全命令和和文件
    當在Shell中輸入命令時,如果記不住命令的完整名字,此時可以使用Tab鍵來補全命令
    例如當執行whoami時只需要輸入wh,然后使用Tab補全后系統會列出wh開頭的命令。
[guanglei@ittimeline ~]$ wh
whatis    whereis   which     while     whiptail  who       whoami    

Tab補全命令還有一種應用場景就是補全路徑,例如在使用cd切換路徑時,如果忘記某個完整路徑,可以使用Tab來補全

[guanglei@ittimeline ~]$ cd /home/guanglei/

Linux系統時間管理

在Linux中有硬件時鐘與系統時鐘兩種時鐘。硬件時鐘指的是主板上的時鐘設備,也就是通常可以在BIOS中設定的時鐘,可以在root用戶登錄后使用hwclock命令查看

[root@ittimeline guanglei]# hwclock
Thu 25 Jun 2020 11:57:39 AM CST  -0.037282 seconds

CST (China Standard Time):中國標準時間GMT(Greenwich Mean Time):格林威治時間UTC(Universal Time Coordinated):世界標準時間

系統時鐘指的是Linux Kernel中的時鐘,所有Linux相關的指令與函數都是讀取系統時鐘的設定。當Linux系統啟動時,系統時鐘會去讀取硬件時鐘的設定,然后系統時鐘獨立運作。系統時間可以通過date命令查看。

[guanglei@ittimeline ~]$ date 
Thu Jun 25 11:57:38 CST 2020

date除了可以顯示系統時間外,還可以修改系統時間,在使用date 命令修改時間之前,首先需要了解時間的格式,可以通過命令date --help查看date命令的幫助信息

下面是截取的日期格式說明

  %%    一個文字的 %
  %a    當前locale 的星期名縮寫(例如: 日,代表星期日)
  %A    當前locale 的星期名全稱 (如:星期日)
  %b    當前locale 的月名縮寫 (如:一,代表一月)
  %B    當前locale 的月名全稱 (如:一月)
  %c    當前locale 的日期和時間 (如:2005年3月3日 星期四 23:05:25)
  %C    世紀;比如 %Y,通常為省略當前年份的后兩位數字(例如:20)
  %d    按月計的日期(例如:01)
  %D    按月計的日期;等于%m/%d/%y
  %e    按月計的日期,添加空格,等于%_d
  %F    完整日期格式,等價于 %Y-%m-%d
  %g    ISO-8601 格式年份的最后兩位 (參見%G)
  %G    ISO-8601 格式年份 (參見%V),一般只和 %V 結合使用
  %h    等于%b
  %H    小時(00-23)
  %I    小時(00-12)
  %j    按年計的日期(001-366)
  %k   hour, space padded ( 0..23); same as %_H
  %l   hour, space padded ( 1..12); same as %_I
  %m   month (01..12)
  %M   minute (00..59)
  %n    換行
  %N    納秒(000000000-999999999)
  %p    當前locale 下的"上午"或者"下午",未知時輸出為空
  %P    與%p 類似,但是輸出小寫字母
  %r    當前locale 下的 12 小時時鐘時間 (如:11:11:04 下午)
  %R    24 小時時間的時和分,等價于 %H:%M
  %s    自UTC 時間 1970-01-01 00:00:00 以來所經過的秒數
  %S    秒(00-60)
  %t    輸出制表符 Tab
  %T    時間,等于%H:%M:%S
  %u    星期,1 代表星期一
  %U    一年中的第幾周,以周日為每星期第一天(00-53)
  %V    ISO-8601 格式規范下的一年中第幾周,以周一為每星期第一天(01-53)
  %w    一星期中的第幾日(0-6),0 代表周一
  %W    一年中的第幾周,以周一為每星期第一天(00-53)
  %x    當前locale 下的日期描述 (如:12/31/99)
  %X    當前locale 下的時間描述 (如:23:13:48)
  %y    年份最后兩位數位 (00-99)
  %Y    年份
  %z +hhmm              數字時區(例如,-0400)
  %:z +hh:mm            數字時區(例如,-04:00)
  %::z +hh:mm:ss        數字時區(例如,-04:00:00)
  %:::z                 數字時區帶有必要的精度 (例如,-04,+05:30)
  %Z                    按字母表排序的時區縮寫 (例如,EDT)

其中比較常用的日期格式有

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

%y 年份最后兩位數位 (00-99)

%Y 年份

%m month (01..12)

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

%M minute (00..59)

%H 小時(00-23)

%S 秒(00-60)

date除了可以顯示時間以外,還可以通過date -s "STRING" 把時間設置成字符串所描述的時間

將日期修改為指定的時間

[root@ittimeline ~]# date -s "2020-6-25 12:17 "
2020年 06月 25日 星期四 12:17:00 CST
[root@ittimeline ~]# date
2020年 06月 25日 星期四 12:17:00 CST

顯示完整日期

[root@ittimeline ~]# date "+%F"
2020-06-25

顯示完整日期和時間

[root@ittimeline ~]# date "+%Y-%m-%d %H:%M:%S" 
2020-06-25 12:32:34
[root@ittimeline ~]# date "+%Y/%m/%d %H:%M:%S"   
2020/06/25 12:32:42

顯示時間

[root@ittimeline ~]# date "+%H:%M:%S"
12:30:42

date -d 顯示字由字符串描述的時間,而不是當前時間

例如查看當前時間的下個月的時間

[root@ittimeline ~]# date
2020年 06月 25日 星期四 12:34:37 CST
[root@ittimeline ~]# date -d "+1 months"
2020年 07月 25日 星期六 12:34:45 CST

使用time命令測試命令運行的時間

[root@ittimeline ~]# time ls -al /etc/
real    0m0.010s
user    0m0.005s
sys     0m0.005s

real 表示實際使用時間,user表示用戶狀態使用時間,sys表示內核狀態使用時間。實際使用時間=用戶狀態使用時間+內核狀態使用時間

Linux幫助命令的使用

由于CentOS7.8在企業運維的應用場景基本都是基于字符界面的命令使用。如果在使用命令時不知道怎么使用,這時就可以通過幫助命令來了解命令的使用方法。常用的查看幫助信息的命名有如下幾個

  1. 通過man命令查看
[root@ittimeline ~]# man find
Linux系統基本操作以及常用命令

man find


在使用man 命令時使用/ keyword可以搜索指定的關鍵字,搜索關鍵字時使用n跳轉到下一個匹配結果,p返回上一個匹配結果,退出使用q。
2. 命令的--help選項

通過--help選項查看find命令的幫助信息,通過輸出結果顯示對比man命令,--help顯示的幫助信息就少很多了。

[root@ittimeline ~]# find --help
Linux系統基本操作以及常用命令

find --help

開關機命令以及7個啟動級別

Linux的開關機以及重啟命令

Linux下常用的關機、重啟命令有shutdown、init、reboot

shutdown主要是用于關機、重啟和定時關機。該命令只用root用戶能夠使用,普通用戶無法使用shutdown -r表示重啟計算機shutdown -r 時間 表示定時重啟shutdown -h表示關機,shutdown -h 時間 表示定時關機shutdown -c 取消關機

使用shutdown -h +10實現10分鐘后關機,然后立即使用shutdown -c 取消關機

[root@ittimeline ~]# shutdown -h +10
Shutdown scheduled for 四 2020-06-25 13:20:26 CST, use 'shutdown -c' to cancel.
[root@ittimeline ~]# 
Broadcast message from [email protected] (Thu 2020-06-25 13:10:26 CST):

The system is going down for power-off at Thu 2020-06-25 13:20:26 CST!

^C
[root@ittimeline ~]# shutdown -c

Broadcast message from [email protected] (Thu 2020-06-25 13:10:31 CST):

The system shutdown has been cancelled at Thu 2020-06-25 13:11:31 CST!

[root@ittimeline ~]# 

如果想要立即關機可以使用shutdown -h now實現,關機以后需要從VMware WorkStation Pro 中啟動虛擬機。

Linux系統基本操作以及常用命令

 

而且關機以后所有的客戶端連接(例如這里的SecureCRT)都會關閉,

Linux系統基本操作以及常用命令

 

待虛擬機中的系統開機之后點擊會話重新連接。

Linux系統基本操作以及常用命令

 

Linux系統的啟動級別

Linux系統的啟動級別主要作用是切換系統的運行級別,通過init命令加上數字0-6之間的7個數字來進行切換。該命令也只能是root用戶使用0:系統停機模式,系統默認運行級別不能設置為0,否則不能正常啟動,此時機器處于關閉狀態。1:單用戶模式:root權限,用于系統維護,禁止遠程登錄,就像windows下的安全模式登錄2:多用戶模式,沒有NFS和網絡支持3:完整的多用戶文本模式,有NFS和網絡,登錄后進入控制臺的命令行模式4:系統未使用,保留一般不用,在一些特殊情況下可以用它來做一些事情,例如在筆記本電腦電池耗盡時,可以切換到這個模式做一些設置。5:圖形化模式,登錄后進入圖形GUI模式,例如CentOS7.8就會進入GNOME桌面6:重啟模式,默認運行級別不能為6,否則不能正常啟動,運行init 6機器就會重啟。

在Linux系統的日常使用中,通常使用init 0來進行關機,init 3進入字符界面,init 5進入圖形界面(前提條件是安裝了圖形界面)。如果是從init3切換到init5,通常是在系統內置的虛擬終端進行。

當使用普通用登錄時,默認打開終端登錄的用戶也是普通用戶,此時可以使用 命令su root命令和密碼來切換成root用戶

Linux系統基本操作以及常用命令

 

然后輸入命令init 3回車后進入字符界面,然后輸入普通用戶的賬號和密碼就可以登錄

Linux系統基本操作以及常用命令

 

然后便可以輸入相關的命令進行操作了

Linux系統基本操作以及常用命令

 

如果想要切換回圖形界面只需要輸入命令init 5并輸入root用戶密碼后便可以切換成圖形界面,因為之前的CentOS7.8安裝了圖形化界面GNOME。

Linux系統基本操作以及常用命令

圖形界面

如果圖形界面卡頓時可以修改默認的啟動級別為字符界面CentOS7不在使用/etc/inittab文件進行默認的啟動級別設置,而是使用比sysvinit的運行級別更為自由的target替代。其中第三運行級別用multi-user.target替代,第五運行級別用graphical.target替代。

設置默認啟動級別為3,即字符界面,該設置重啟后生效

[root@ittimeline ~]# systemctl set-default multi-user.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
[root@ittimeline ~]# 

使用shutdown -r now命令重啟系統后發現CentOS7.8是在字符界面下啟動

Linux系統基本操作以及常用命令

 

設置默認啟動級別為5,即圖形化界面,該設置重啟后生效

[root@ittimeline ~]# systemctl set-default  graphical.target 
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.

如果想要查看當前系統的運行級別,可以通過runlevel命令或者是systemctl get-default查看

如果systemctl get-default輸出的結果是graphical.taget表示當前的運行級別是圖形化界面

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

runlevel命令可以查看系統啟動級別的切換過程

[root@ittimeline ~]# runlevel
5 3
[root@ittimeline ~]# init 5
[root@ittimeline ~]# runlevel
3 5

分享到:
標簽:常用命令 Linux
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定