第一部分:簡單介紹linux指令
1指令提示符
1.1指令提示(prompt)符:
[root@localhost ~]# 管理者使用者
[zxm@localhost ~]$ 普通使用者
如:
[root@localhost ~]# useradd -m aa//建立普通使用者aa(username)
[root@localhost ~]# su aa//由管理者使用者進入普通使用者
[aa@localhost root]$ su root//再次進入root使用者
password: //輸入虛拟機登陸的密碼
[root@localhost ~]#
1.2顯示提示符格式
[root@localhost ~]# echo $ps1
[\u@\h \w]\$
2執行指令
2.1輸入指令後回車
2.2在shell可執行的指令有兩類:内部指令和外部指令
内部指令:由shell自帶的,而且通過某指令形式提供
help:内部指令清單
enable cmd 啟用内部指令
enable -n cmd 禁用内部指令
enable -n 檢視所有禁用的内部指令
外部指令:在檔案系統路徑下有對應的可執行程式檔案
檢視路徑:which -a | --skip-alias; whereis
差別指定指令是内部指令還是外部指令:type command
[root@localhost ~]# type cd
cd is a shell builtin
[root@localhost ~]# type help
help is a shell builtin
[root@localhost ~]# type id
id is /usr/bin/id
3執行外部指令
3.1 hash 緩存表:記錄外部指令執行時的路徑
好處:大大提高了指令的調用速率
3.2 hash 常見用法:
hash 顯示hash 緩存
hash -l 顯示hash 緩存,可作為輸入使用
hash -r 清除緩存
4指令别名
4.1顯示目前shell程序所有可用的指令别名 alias
4.2定義别名name,其相當于執行指令value
alias name="value"
4.3在指令中定義的别名,僅對目前shell 程序有效。如果要永久有效,需要定義到配置的檔案中(不會立即生效)
僅對目前使用者:~/.bashrc
對所有使用者有效:/etc/bashrc
4.4bash程序重新讀取配置檔案
source /path/to/config_file
. /path/to/config_file
4.5撤銷别名:unalias
unalias [-a] name [name...]
-a 取消所有别名
4.6如果别名同原指令同名,如果要執行原指令,可使用
“\command”
'command'
/path/command:外部指令
5指令格式
5.1簡單指令
5.1.1 date 顯示時間
[root@localhost ~]# hwclock//硬體時鐘
fri 12 jan 2018 10:50:28 pm cst -0.809406 seconds
[root@localhost ~]# date//系統時鐘
sat jan 13 10:50:26 cst 2018
[root@localhost ~]# clock -w --systohc//以系統時鐘為準,校正硬體時鐘
//如果以硬體時鐘為準,校正系統時鐘:clock -s --hctosys
[root@localhost ~]# clock
sat 13 jan 2018 10:51:56 am cst -0.896891 seconds
[root@localhost ~]# date
sat jan 13 10:52:03 cst 2018
5.1.2 簡單指令
顯示月曆 cal -y
文本編輯 nano
關機 halt ,poweroff
重新開機 reboot -f:強制,不調用shundown;-p:切斷電源
顯示目前登入有效使用者:whoami
系統目前所有的登入會話:who
系統目前所有的登入會話及所做的操作:w
建立新screen會話:screen -s [session]
加入screen會話:screen -x [session]
退出并關閉screen會話:exit
剝離目前screen會話:ctrl+a,d
顯示所有已經打開的screen會話:screen -ls
恢複某screen會話:screen -r [session]
顯示字元:echo
指令補全:tab鍵
指令曆史:history
-c:清空指令曆史
-w:儲存曆史清單到指定的曆史檔案
bash的快捷鍵:
ctrl+l:清屏,相當于clear指令
ctrl+o:執行目前指令,并重新顯示本指令
ctrl+s:阻止螢幕輸出,鎖定
ctrl+q:允許螢幕輸出
ctrl+c:終止指令
ctrl+z:挂起指令
ctrl+r:删除目前行
第二部分:linux的常見指令
2.1. su 在不退出登陸的情況下,切換到另外一個人的身份
用法: su -l 使用者名(如果使用者名預設,則切換到root狀态)
如:su -l netseek (切換到netseek這個使用者,将提示輸入密碼)
2.2. passwd 可以設定密碼
2.3. history 使用者用過的指令
如: history //可以顯示使用者過去使用的指令
2.4. !! 執行最近一次的指令
2.5. mkdir指令
如: mkdir netseek //建立netseek這個目錄
2.6. man 對你熟悉或不熟悉的指令提供幫助解釋
man ls 就可以檢視ls相關的用法
注:按q鍵或者ctrl+c退出,在linux下可以使用ctrl+c終止目前程式運作。
2.7. ls 檢視目錄或者檔案的屬性,列舉出任一目錄下面的檔案
如:
ls /usr/man
ls -l
2.8. clear,date指令
clear:清屏,相當與dos下的cls;
date:顯示目前時間。
2.9. mount 加載一個硬體裝置
用法:mount [參數] 要加載的裝置 載入點
mount /dev/cdrom
cd /mnt/cdrom //進入CD光牒目錄
2.10. cp 拷貝檔案
cp filename1 filename2 //把filename1拷貝成filename2
cp 1.c netseek/2.c //将1.c拷到netseek目錄下命名為2.c
2.11.chmod 指令 權限修改
用法:chmod 一位8進制數 filename。
如: chmod u+x filenmame //隻想給自己運作,别人隻能讀
//u表示檔案主人, g 表示檔案檔案所在組。 o 表示其他人 ;r 表可讀,w 表可寫,x 表可以運作
chmod g+x filename //同組的人來執行
2.12. rm 删除檔案和目錄
rm 1.c //将1.c這個檔案删除
2.13. mv 移走目錄或者改檔案名
mv filename1 filename2 //将filename1 改名為filename2
mv qib.tgz ../qib.tgz //移到上一級目錄
2.14.whoami,whereis,which,id
//whoami:确認自己身份
//whereis:查詢指令所在目錄以及幫助文檔所在目錄
//which:查詢該指令所在目錄(類似whereis)
//id:列印出自己的uid以及gid。(uid:使用者身份唯一辨別。gid:使用者組身份唯一辨別。每一個使用者隻能有一個唯一的uid和 gid)
whoami //顯示你自已登陸的使用者名
whereis bin 顯示bin所在的目錄,将顯示為:/usr/local/bin
which bin
2.15. cd 改變目前目錄
pwd 檢視目前所在目錄完整路徑
pwd //檢視目前所在目錄路徑
cd netseek //進入netseek這個目錄
cd //退出目前目錄
2.16. cat,more指令 将某個檔案的内容顯示出來。
兩個指令所不同的是:cat把檔案内容一直列印出來,而 more則分屏顯示
cat>1.c //就可以把代碼粘帖到1.c檔案裡,按ctrl+d 儲存代碼。
cat 1.c 或more 1.c //都可以檢視裡面的内容。
2.17cal指令
cal -y//cal後跟一個參數解釋為年份而不是月份;
//不帶參數解釋為目前月份的月曆;
//帶兩個參數解釋為月+年