1.設置網絡自動登陸操作方式;
a.用gedit(gedit為圖形界面更改文本文件)打開文件路徑 /etc/sysconfig/network- scripts/ifcfg-ens33進入界面將ONBOOT=NO
改成yes然后保存關閉界面即可。rebootco重啟即可。
2.設置用戶自動登陸模式。
a.用nano(nano為字符界面編輯文本文件)打開文件路徑nano /etc/gdm/custom.conf進入修 改界面,增加下面一段話保存即可
AutomaticLoginEnable=true
AutomaticLogin=root
3.查看系統ID賬號.0為root賬號,在centos6.9中普通賬號為500以后,centos7中普通賬號
為1000以后。例如id – u為查看當前用戶系統賬號,id -u lv 為查看lv賬號的ID號。
4.按ctrl+alt+f2-f6可依次打開五個終端,按tty 可以看到在那個終端登錄的。還可用
who查看所有登陸終端的信息。顯示pts的為遠程登陸的,tty為本機登陸。whoami為
顯示當前登陸的用戶,who am i 為顯示詳細的登陸用戶及在那個終端。當個w 顯示更詳
細的登陸信息。也可以用chvt1-6來切換終端。
5. init3為切換到字符界面,init5為切換到圖形界面。startx 也可切換到圖形界面,但
不是模式切換,只是打開了一個程序而已。
6.查看運行的那種shell 用echo $SHELL. 查看系統支持哪幾種shell,cat /etc/shells.
7.命令提示符的更改。(#為管理員登陸,$為普通用戶登陸。)
顯示提示符格式,echo $PS1
修改提示符格式,PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
要想永久保存必須存入文件,nano /etc/profile.d/evn.sh 進入文件后將PS1里的參數修改保存即可。
\e \033 \u 當前用戶
\h 主機名簡稱\H 主機名 \w 當前工作目錄
\W 當前工作目錄基名 \t 24小時時間格式 \T 12小時時間格式
\! 命令歷史數 \# 開機后命令歷史數
8.查看命令的類型,外部命令&內部命令
用type+命令 來查看是外部命令還是內部命令?;蛴脀hich命令 -a可以選擇查看全部路徑。
此圖查看了who 命令為外部命令,而enable為shell內部集成的命令。
enable cmd 啟用內部命令 enable –n cmd 禁用內部命令 enable –n 查看所有禁用的內部命令
用enable可以查看所有內部命令,用help 可以查看詳細的外部命令列表。
在外部命令中按echo $PATH列表 中的目錄次序查找執行。
hash緩存 執行過一次即使第二次路徑更改按照緩存中的路徑執行如果沒有則報錯,這時我們需要把hash
中的緩存清理一下即可。
hash 顯示 hash緩存
hash –l 顯示hash緩存,可作為輸入使用 hash –p path name 將命令全路徑path起別名為name
hash –t name 打印緩存中name的路徑
hash –d name 清除name緩存
hash –r 清除所有緩存
別名命令; alias 顯示當前shell進程所有可用的命令別名
定義別名; alias cdnet='cd/etc/sysconfig/network-scripts/'
必須保存到文件中可生效 nano .bashrc 保存后用.或source加文件生效
. .bashrc/ source .bashrc
如果要用原始命令不用別名命令可以找路徑輸入,加‘’ ,加\,加“”都可以
例如;\ls, 'ls' "ls" /bin/ls command ls。都可以
which –alias-skip ls跳過別名只顯示路徑
取消別名 ualias+name
命令執行的優先級 別名>內部命令>外部命令
9.時間和時鐘
?Linux的兩種時鐘
系統時鐘:由Linux內核通過CPU的工作頻率進行的
硬件時鐘:主板 ?
相關命令
date 顯示和設置系統時間 date +%s
date -d @1509536033
hwclock,clock: 顯示硬件時鐘
-s, 以硬件時鐘為準,校正系統時鐘
-w, 以系統時鐘為準,校正硬件時鐘
僅在centos7上可用;校準時區:timedatectl set-timezone Asia/Shanghai
用網絡時間來校準系統時間 ;yum -y install ntp ntpdate; ntpdate 0.cn.pool.ntp.org (臨時生效)
要想開機校準需要寫入配置文件
centos6:
vim /etc/ntp.conf 增加 server 172.20.0.1 iburst
service ntpd start (立即啟用服務生效)
chkconfig ntpd on (每次開機都啟用生效)
centos7:
vim /etc/chrony.conf 增加 server 172.20.0.1 iburst
systemctl start chronyd (立即啟用服務生效)
systemctl enable chronyd (每次開機都啟用生效)
時區:/etc/localtime ?
顯示日歷:cal –y
設置系統時間(只有在root下才可更改)date 031212122018.30(2018 03 月12 日12:12:30)
date -d "-2 day" +%F 顯示時間
date -d "5 day" +%F 顯示時間
date -s"-1 day" +%F 設置時間
顯示詳細的的時間 date +"%y-%m-%d %H:%M:%S" .date +“%F %T" 兩種都可以。
10 .關機 poweroff halt 重啟reboot
關機或重啟shutdown
shutdown -c 取消定時關機
shutdown +5 "hbdj" 五分鐘后關機并有提示消息
shutdown -h 12:30 定時關機命令
11. bash快捷鍵
?Ctrl + l 清屏,相當于clear命令
?Ctrl + o 執行當前命令,并重新顯示本命令
?Ctrl + s 阻止屏幕輸出,鎖定
?Ctrl + q 允許屏幕輸出
?Ctrl + c 終止命令
?Ctrl + z 掛起命令
?Ctrl + a 光標移到命令行首,相當于Home ?
Ctrl + e 光標移到命令行尾,相當于End
?Ctrl + f 光標向右移動一個字符
?Ctrl + b 光標向左移動一個字符
?Alt + f 光標向右移動一個單詞尾 ?
Alt + b 光標向左移動一個單詞首 ?
Ctrl + xx 光標在命令行首和光標之間移動 ?
Ctrl + u 從光標處刪除至命令行首 ?
Ctrl + k 從光標處刪除至命令行尾 ?
Alt + r 刪除當前整行。
12.rz 上傳至linux文件,sz+文件目錄,從Linux下載文件到windows。
13.文件的創建
文件的名稱不能大于255個字節。
包括路徑在內文件名稱最長4095個字節 ?
藍色–>目錄
綠色–>可執行文件
紅色–>壓縮文件
淺藍色–>鏈接文 件
灰色–>其他文件 ?
除了斜杠和NUL,所有字符都有效.但使用特殊字符的目錄名和文件不推薦使用, 有些字符需要用引號來引用它們。 ?
標準Linux文件系統(如ext4),文件名稱大小寫敏感。例如: MAIL, Mail, mail, mAiL
pwd 顯示工作路徑,pwd-P顯示真實工作路徑(當在軟連接是則需要-P顯示真實路徑)
絕對路徑和相對路徑
絕對路徑都是以/開始的路徑。相對路徑是相對現在所在的的路徑,不需要以/開始。
相對路徑中以 ..代表在此路徑下的上一層目錄。
basename 只取顯示路徑的文件名不要目錄。
dirname 只要顯示路徑的目錄信息不要文件名。
文件的三種狀態
訪問時間,atime,讀取文件內容
修改時間, mtime,改變文件內容(數據)
改變時間, ctime,元數據發生改變
文件通配符
* 匹配零個或多個字符 ?
? 匹配任何單個字符
?~ 當前用戶家目錄 ?
~mage 用戶mage家目錄 ?
~+ 當前工作目錄 ?
~- 前一個工作目錄 ?
[0-9] 匹配數字范圍 ?
[a-z]:字母
[A-Z]:字母 ?
[wang] 匹配列表中的任何的一個字符 ?
[^wang] 匹配列表中的所有字符以外的字符
[:digit:]:任意數字,相當于0-9
[:lower:]:任意小寫字母
[:upper:]: 任意大寫字母
[:alpha:]: 任意大小寫字母
[:alnum:]:任意數字或字母
touch 創建文件
touch -a 僅改變atime和ctime
touch-m 僅改變ctime和mtime
touch -t 指定atime和mtime的時間戳
touch -c 如果文件不存在則不予以創建。
練習
?1、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間出現至少一位數 字的文件或目錄
?2、顯示/etc目錄下以任意一位數字開頭,且以非數字結尾的文件或目錄
?3、顯示/etc/目錄下以非字母開頭,后面跟了一個字母及其它任意長度任意字符 的文件或目錄
?4、顯示/etc/目錄下所有以rc開頭,并后面是0-6之間的數字,其它為任意字符 的文件或目錄 ?
5、顯示/etc目錄下,所有以.d結尾的文件或目錄
?6、顯示/etc目錄下,所有.conf結尾,且以m,n,r,p開頭的文件或目錄 ?
7、只顯示/root下的隱藏文件和目錄 ?
8、只顯示/etc下的非隱藏
答案
ls /var/l*[[:digit:]]*[[:lower:]]
2
ls /etc/[0-9]*[^[:digit:]]
3
ls /etc/[^[:alpha:]][[:alpha:]]*
4
ls -d /etc/rc[0-6]*
5
ls -d /etc/*.d
6
ls -d /etc/[mnrp]*.conf
7
ls -d /root/.*
8
ls /etc/[^.]*/ -d
14 .cp 文件復制
?-i:覆蓋前提示
–n:不覆蓋,注意兩者順序 ?
-r, -R: 遞歸復制目錄及內部的所有內容 ?
-a: 歸檔,相當于-dR –preserv=all ?可以理解為存檔備份,保留源文件的所有屬性。
-d:–no-dereference –preserv=links 不復制原文件,只復制鏈接名 ?
–preserv[=ATTR_LIST]
-v 可以顯示復制的整個過程。(如果文件過大,容易造成終端死機,就不要在使用了)
–backup=numbered 目標存在,覆蓋前先備份加數字后綴 :–update 只復制源比目標更新文件或目標不存在的文件
練習題
?1、定義別名命令baketc,每天將/etc/目錄下所有文件,備份到 /app獨立的子目錄下,并要求子目錄格式為 backupYYYY-mm-dd, 備份過程可見 ?
2、創建/app/rootdir目錄,并復制/root下所有文件到該目錄內, 要求保留原有權限
1. alias baketc='cp -av /etc /data/backup`date +%F`'
2. cp -a /root /data/rootdir
15 .文件的移動,重命名和刪除。
mv 和cp 基本相同 但目錄與目錄之間操作時無需加-r選項。
rm 刪除命令
-i 交互式的(詢問是否刪除)
-r 遞歸刪除
-f 強制刪除
刪除文件是危險的所以最好將rm重新定義到mv在不用的文件中做備份。
方法;alias rm=mv -t /data 既將所要刪的文件移動到/data文件中。-t在mv的用法是將移動到的目的地
寫在前面,而源文件寫在后面。例如刪除fen文件rm fen 等價于mv -t /data fen.既將fen 放在/data文件中。
當刪除文件是有其他人在使用,即使文件刪除文件,但不會立即釋放磁盤空間,一種方法是殺掉進程,另一種方法是>文件名 再用rm -f 文件名 刪掉。
16.目錄的操作。
tree 顯示目錄樹
-d: 只顯示目錄
-L level:指定顯示的層級數目
-P pattern: 只顯示由指定pattern匹配到的路徑 ?
mkdir 創建目錄
-p: 存在于不報錯,且可自動創建所需的各目錄
-v: 顯示詳細信息
-m MODE: 創建目錄時直接指定權限 ?
rmdir 刪除空目錄
-p: 遞歸刪除父空目錄
-v: 顯示詳細信息 ?
rm -r 遞歸刪除目錄樹
練習題
1) 如何創建/testdir/dir1/x, /testdir/dir1/y, /testdir/dir1/x/a, /testdir/dir1/x/b, /testdir/dir1/y/a, /testdir/dir1/y/b ?
(2) 如何創建/testdir/dir2/x, /testdir/dir2/y, /testdir/dir2/x/a, /testdir/dir2/x/b
(3) 如何創建/testdir/dir3, /testdir/dir4, /testdir/dir5, /testdir/dir5/dir6, /testdir/dir5/dir7
答案 ;
1.mkdir -p /testdir/dir1/{x,y}/{a,b}
2.mkdir -p /testdir/dir2/{x/{a,b},y}
3.mkdir -p /testdir/dir{3,4,5/dir{6,7}}
17 .索引節點
節點編號在一個分區內是系統自動分配的??鐓^重新分配節點編號。
節點編號用完,即使有空間也無法創建新的文件了。
一個指針塊 4k,間接指 針最多保存1024*4K
在間接指針1024*1024*4k
刪文件的意思是先刪節點編號。數據并不會立即刪除,但當另一個文件使用數據塊是將會覆蓋。
18.軟連接和硬鏈接
硬鏈接;文件只有一個 名字是多個的,節點編號相同。他們之間是對等的,刪除哪一個都對其他并不造成任何影響。
ln 1 2
ln 1 3
如上圖所示 創建的硬鏈接,2和3兩個文件節點編號相同,任何一個文件的內容改變,其他兩個文件也自動改變。兩個不同分區不能創建硬鏈接。也不支持目錄創建鏈接。
軟連接 ; ln -s (直接看軟連接對應的原始路徑:readlink 加鏈接名;或用ll加鏈接名查看)
他們是兩個不同的文件,節點編號也是不同的。
針對不同目錄創建,可跨分區,目錄也支持。
跨分區創建,最好寫兩個的絕對路徑
如果由兩個版本的新文件,如fn1.1 更新后為fn1.2 ,原先用軟連接指向fn1.1,既ln -s fn fn1.1 如果想用新版本的文件,將舊的軟連接刪除新建即可 rm -f fn ln -s fn fn1.2 。通常為升級新版本所用的方法。
軟硬鏈接的區別
本質
硬鏈接:同一個文件多個名字
軟鏈接:一個文件對應快捷方式,不同文件
1、鏈接數
2、跨分區
3、目錄
4、原始和鏈接文件關系
5、刪除
6、大?。ㄜ涍B接的大小由鏈接的路徑決定的,)
19 .確定文件內容
file [options] <filename>… ?
常用選項: -b 列出文件辨識結果時,不顯示文件名稱
-f filelist 列出文件filelist中文件名的文件類型
-F 使用指定分隔符號替換輸出文件名后默認的”:”分隔符
-L 查看對應軟鏈接對應文件的文件類型。
20. I/O .和管道
I/O 既輸入和輸出(inpout /outpout)
在linux 里打開一個文件,系統會自動分配一個數字來表示它的文件描述符。(三個常見的文件描述符,0,1,2)
標準輸入(STDIN)-0 默認接受來自鍵盤的輸入 ?
標準輸出(STDOUT)-1 默認輸出到終端窗口 ?
標準錯誤(STDERR)-2 默認輸出到終端窗口
命令> 顯示輸出的路徑 既可已不再本窗口輸出或者輸出到其他定義路徑的文件里。
命令2> 顯示輸出的路徑 是將錯誤的信息輸出到指定的文件路徑下。
一個>的情況下再次輸入信息將會覆蓋上次的文件信息,所以用>>則是追加信息而不是覆蓋。
如果一條命令既有對的輸出也有錯的的輸出,將他們分別輸出到不同的文件里
例如; ls hergh /data >f1 2>f2這條命令里將對的輸出到f1中,錯的輸出到f2中。
如果將一條命令對的和錯的都放到一個文件里
例如; ls hergh /data >f1 2>&1 這條命令就是將對的放到f1 中 ,錯的放到對的里,輸出到f1中。(或用&>f1)不用管順序了。
兩條命令整體重定向(ls pwd)>f1 如果不想看到執行結果可以定向到 dev/null 相當于垃圾箱。
?
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/93455
第一行reboot后多了兩個字母co
@路在腳下:寫的真好,很全很仔細,學習了