天天看點

系統管理維護與常用指令

一、系統管理和維護

1.1Tab補全

輸入Tab一次: 輸入的指令能夠唯一辨別,直接跳出指令

                         輸入的内容不能唯一表示,再按Tab,顯示出所有比對指令

Tab指令補全的原理:vi, 系統根據環境變量$PATH去檔案下尋找指令

1.2 Shell指令操作

Ctrl+a 跳到指令一行最前面

Ctrl+e 跳到指令一行最後面

Ctrl+k 删除光标後面所有指令

Ctrl+u 删除光标前面所有内容

Ctrl+l 清空螢幕所有内容

Ctrl+r 搜尋曆史指令

Ctrl+c 停止目前正在運作的程式

1.3 vim操作

編輯模式 : i: 在目前光标下插入

                 O:上一行插入

                 o:下一行輸入

指令行模式: :q q!

                       : w w! wq!

                       : x (儲存退出)

                       : set nu

1.4 History指令

!10 !+曆史指令

! $ 執行最後一次曆史指令

help history 檢視幫助

history -w 把曆史指令清單同步到曆史指令檔案中

echo $HISTFILE 檢視曆史指令檔案位置

如何設定曆史指令的儲存數量

echo $HISTSIZE

vim /etc/profile

HISTSIZE=10

source /etc/profile

如何設定曆史指令的時間戳和使用使用者

vim /etc/profile

export HISTTIMEFORMAT="%F %T

whoami

"

source /etc/profile

1.5 alias

[[email protected] ~]# alias net=“vim /etc/sysconfig/network-scripts/ifcfg-eth0” #定義别名

[[email protected] ~]# unalias net      #取消别名

[[email protected] ~]# \net         #跳過别名

[[email protected] ~]# vim /etc/bashrc        #讓别名永久生效

alias net=“vim /etc/sysconfig/network-scripts/ifcfg-eth0”

:wq

[[email protected] ~]# source /etc/bashrc

1.6 變量

#!/bin/bash

who=‘whoami’        #全局變量,作用于目前檔案

test(){IP=‘192.168.254.125’         #局部變量,作用于一行代碼,或者代碼塊

ping $IP

echo $who}

test

環境變量:正對于目前的shell下的所有子程序都生效

1.7 标準輸入、輸出

 >filename 标準輸出到檔案

[[email protected] ~]# ls >file1

2> errname 錯誤輸出到檔案

[[email protected] ~]# mysql 2>err

重定向:

三種方法将标準輸出與錯誤輸出放入同一個檔案

 >filename 2>errname 将标準輸出到filename檔案,錯誤輸出到errname

[[email protected] ~]# ll anaconda-ks.cfg anaconda-ksl.cfg >ceu 2>err

[[email protected] ~]# ll anaconda-ks.cfg anaconda-ksl.cfg &>file4

[[email protected] ~]# ll anaconda-ks.cfg anaconda-ksl.cfg >file5 2> &1

标準輸入到file3

[[email protected] ~]# ll > test1[[email protected] ~]# ll >> test1

[[email protected] ~]# fdisk 2>test2

[[email protected] ~]# fdisk 2>>test2

[[email protected] ~]# ll anaconda-ks.cfg anaconda-ksl.cfg >test3 2>test4[[email protected] ~]# ll anaconda-ks.cfg anaconda-ksl.cfg &>test5[[email protected] ~]# ll anaconda-ks.cfg anaconda-ksl.cfg >>test5 2>&1

1.8 特殊符号、通配符

“|”:把上一個指令交給下一個指令繼續處理

[[email protected] ~]# ll |grep err

[[email protected] ~]# ip a |grep inet

[[email protected] ~]# ip a |grep inet |tee test6

“tee”: 把過濾的結果列印到檔案中

“…”: 上一級目錄

[[email protected] ~]# ll …/

[[email protected] ~]# cd …/

“.”: 代表目前目錄

“;”: 代表多條指令的分割 [[email protected] ~]# a=abc;echo $a

“``” (反撇号) 把内容還原成指令 [[email protected] ~]# a=

ls

;echo $a

“”: (星号)   比對所有 [[email protected] ~]# ll te

“?”: 比對單個任意字元 [[email protected] ~]# ll te?

二、系統管理的常用指令

ls 顯示的是連結檔案及連接配接目錄

ls -a 顯示所有的隐藏檔案及目錄

ls -A 隻顯示隐藏檔案

ls -l 等同于ll

ls -L 顯示的是連接配接路徑下的真實檔案

2.1絕對路徑、相對路徑、pwd

用絕對路徑表示: index.html;/root/test/app/index.html

用相對路徑表示: index.html;app/index.html^C

pwd 顯示目前工作目錄,目前路徑       -p 顯示連結檔案的真實路徑

cd - 切換到上一次檔案所在路徑

cd~ 切換到使用者的家目錄

cd…/…/ 切換到上上層目錄

[[email protected] ~]# cd …/…/

date

時鐘顯示格式拼接:

[[email protected] ~]# date “+%Y-%m-%d %H:%M:%S”

修改系統時間:

[[email protected] ~]# date -s 17:54:30

顯示時區:

[[email protected] ~]# date +%Z

uname

[[email protected] ~]# uname -a 檢視系統核心資訊

[[email protected] ~]# uname -r

系統管理維護與常用指令

free

[[email protected] ~]# free

[[email protected] ~]# free -m

[[email protected] ~]# free -h

系統管理維護與常用指令
系統管理維護與常用指令

mem: 記憶體

swap: 在磁盤上格式化的一個和記憶體格式相同的分區

buffer: 資料讀的緩存空間

cache: 資料寫的緩存空間

reboot 重新開機系統

shutdown -h now 關機