Linux课堂笔记-第二天
Shell簡介
在Linux系統(tǒng)中,shell是最常用程序,作用偵聽用戶命令,啟動命令所指定的進程并將結果返回給用戶。他還是一種程序設計語言,是系統(tǒng)維護時的重要工具。
兩部分組成,#為命令行提示符;#為超級用戶,$為其它用戶;
?@前為第一部分,用戶的身份
@后為第二部分,你所在的主機名
~位置所展示的內容為當前用戶所在的目錄
Shell 命令三部分 shell命令、選項、參數(shù);
一般選項都是在前邊加 –
一般參數(shù)都是在前邊加 /
每部分之間都是用空格來分隔的
# 切換 ¥ ?所用 su - (user01) ??還原 logout
建用戶 useradd +用戶名
檢查主機名是否一致hostname
Id 查看身份 ??????cd / (etc) ?換目錄
Bash簡介
Bash目前是大多數(shù)Linux系統(tǒng)默認的Shell.
Bash的命令語法是Bourne ?Shell命令語法的超集
which 命令,用于查看需要查找的東西在什么地方;
比如 which passwd 搜目錄
組合鍵
ctrl+L 清屏
ctrl+D 工作結束,比如兩個用戶之間的切換。例:root用戶和use用戶之間的切換;
ctrl+C 終止命令? 終止正在執(zhí)行的命令
ctrl+Z 掛起命令
ctrl+A 光標快速移到行首
ctrl+E 光標快速移到行尾
特殊字符
~用戶主目錄
?
通配符
*代表任意字符
?代表任何單一字符
[ ]在方括號中是或的關系,不管在方括號內添加什么內容
[ ! ]加!是取反,除……之外的;
?
<tab>鍵,命令的自動補齊
<tab>鍵對命令、文件路徑、變量自動補齊,按1次<tab>如果未能補齊,說明有多個,需再按一次并進行選擇;
歷史命令
最簡單的就是上箭頭回翻查找。
?
$HISTFILE? 可以查看到.bash_history? 其中 . 是隱藏文件目錄
$HISTSIZE? 可以看到在$HISTFILE中存儲1000條命令
$HISTFILESIZE 同樣可以看到設置的$HISTFILE中存儲的命令數(shù)
命令排列
;沒有邏輯關系,第一個命令執(zhí)行完閉無論成功與否都會自動執(zhí)行第二個命令
&& 有邏輯關系,第一個命令執(zhí)行成功之后才會執(zhí)行后邊的命令
?
du 命令,查看文件占用空間大小
du -hs /root 查看root目錄所有文件占用空間數(shù)并用總數(shù)的形式展示
?
命令別名
查看系統(tǒng)預置別名命令:Alias
?
創(chuàng)建別名:alias la=’ls -a’
取消別名:unalias la
注:一般不建議創(chuàng)建其它的命令別名,過多的命令別名也會增加記憶命令的困難程度。
管道符
復雜的任務不是由大型軟件完成,而是運用Shell的機制,組合許多小程序共同完成。管道就在其中發(fā)揮重要的作用,他可以將某個命令的輸出信息當做某個命令的輸入,由管道符號 | 來標識。
who 顯示當前連接到系統(tǒng)的終端
wc?? 單詞計數(shù)
wc -l 只看行數(shù)
more 分頁顯示
grep 尋找匹配關鍵字的行,并都顯示出來。
Ps -ef 查看系統(tǒng)后臺進程信息
rpm -qa 查詢所有已經安裝的軟件包
sort ?排序
管道符 | 用來把多個小的命令串聯(lián)起來
比如:
Ls /etc / | more
重定向
輸出重定向:即將某一命令執(zhí)行的輸出保存到文件中,如果已經存在相同的文件,那么覆蓋源文件中的內容。
使用輸出重定向將/boot目錄的內容保存到/root/abc文件中
Ls / boot > /root /abc
使用echo命令和輸出重定向創(chuàng)建/root/mm文件,文件內容是Hello。
echo Hello > /root/mm
另外一種特殊的輸出重定向是輸出追加重定向,即將某一命令執(zhí)行的輸出添加到已經存在的文件中。
先創(chuàng)建touch / root /ao
echo Hello > /root/ao
cat /root /ao
echo ?lkkk >>/root/ao
輸入重定向
使用輸入重定向將文件/root/mm的內容作為輸入讓cat命令執(zhí)行
cat < /root/mm
使用輸入追加重定向創(chuàng)建/root/bc文件
cat > /root/mm <<EOF
標準錯誤輸出:
ls sfafsfsf 1>/root/test.log 2>/root/error.log
輸出正確的結果重定向至/root/test.log 如果輸出的是錯誤的則重定向至/root/error.log如果要把結果存到一起則把目錄改成一致。也可以簡寫成
ls sfafsfsf 1>/root/test.log 2>&1
ls sfafsfsf &> /root/test.log
單一命令一般是二選一,所以不會出現(xiàn)覆蓋的情況。但是一般正常用還是>>兩個大于號
同時使用輸出和錯誤重定向列出/nn目錄內容到/root/00文件中
Ls / nn & >/root/00
cat ?/root/ 00
Ls無法訪問/nn沒有那個文件或目錄
因為沒有/nn目錄,所以最終使用了錯誤重定向
SSH協(xié)議
服務器端
SSH 協(xié)議的端口號 22
openssh??? ssh協(xié)議具體的實現(xiàn)
?
SSH狀態(tài)命令:
service sshd status
service sshd start
service sshd stop
服務查看命令
?
netstat -tInp | grep 22
netstat 查看主機網絡狀態(tài)
-t 僅看tcp/ip 協(xié)議
l 監(jiān)聽狀態(tài)
n 數(shù)字的形式顯示端口號
p 端口
grep 22 匹配有22的每一行信息
客戶端
?遠程連接的創(chuàng)建
遠程圖形界面的協(xié)議 VNC
?TigerVNC? ?Redhat oracle? 用這個
realVNC
ultraVNC
?rpm -qa | grep vnc
?檢查一下VNC
?tigervnc 安裝
?vncserver 命令
?vncserver -list
vncserver -kill :多余的數(shù)值
?從圖形界面應用程序中找到tigervnc
?輸入IP以及要連接的服務號:1
?輸入安裝時設置的密碼password
?vi /etc/selinux/config ??把 SELINUX
?
Linux文件系統(tǒng)
ls -lh 查看某個文件的屬性
由10位組成,第一位時文件類型。后邊九位代表權限
- 代表普通文件
d 代表目錄
b 設備文件 一般存儲在 /dev? 逗號分隔,一個主設備號一個次設備號,主設備號用來說明這是什么設備,次設備號說明這是第幾個。 字母b代表塊類型設備,c 代表字符類型設備。
設備轉化成設備文件,目的是簡化用戶對設備的調度。
tty 直連的虛擬設備編號
/dev/pts 目錄
終端之間的通信
echo hello > /dev/pts/1
who ????write ?root ?pts/1
?
p是管道文件 mkfifo mypipe創(chuàng)建管道文件的命令
轉載于:https://www.cnblogs.com/Matilda/p/7209203.html
總結
以上是生活随笔為你收集整理的Linux课堂笔记-第二天的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 索引快速查询
- 下一篇: MFC导出对话框类DLL的实现