計算機由硬件和軟件構(gòu)成
硬件的五大部件:
-運算器
-控制器
(運算器+控制器 = 中央處理器(CPU))
-存儲器 - 內(nèi)存(RAM)(易失性存儲器)
-輸入設(shè)備 -|
-輸出設(shè)備 -| IO設(shè)備
軟件的兩大類別:
- 系統(tǒng)軟件 - 操作系統(tǒng)(內(nèi)核+工具程序)
- 應(yīng)用軟件
Linux系統(tǒng)的內(nèi)核是Free的 (www.kernel.org可以拿到Linux內(nèi)核)(org非盈利組織)(com盈利的)
Linux系統(tǒng)最早的內(nèi)核是由Linus開發(fā)的岔擂,現(xiàn)在也是由他在管理和維護這個系統(tǒng)的內(nèi)核版本
除了Windows系統(tǒng)笙各,其他系統(tǒng)幾乎都是Unix的衍生品
類Unix操作系統(tǒng)
Unix - MINIX - Linux - Android
Unix - BSD - FreeBSD - Macintosh - macOS - iOS
Unix - Solaris
- IBM -AIX
- HP - Hp Unix
Shell - 殼程序 - 人機交互的界面(人和計算機對話的窗口)
Shell中的工具和命令:
who - 查看登錄信息
who am i - 查看自己的登錄信息
whoami - 查看自己的用戶名
last - 查看最近的登錄記錄
clear - 清除屏幕上的輸出
cal - 查看日歷(calendar)
cal 2 2019 / cal 2019 - 查看指定年月的日歷
date - 查看日期
useradd yuxiaoyu - 創(chuàng)建一個yuxiaoyu的賬戶
userdel 用戶名 - 刪除一個用戶
passwd yuxiaoyu - 更改yuxiaoyu賬戶的用戶口令
#
是超級管理員,$是普通用戶
logout - 登出
exit - 退出登錄
su - 切換用戶(switch user)
su root - 切換到root用戶
切換用戶使用exit會退出到之前的用戶
超級管理員切換到普通用戶不需要密碼
reboot / init 6 - 重啟
shutdown / init 0 - 關(guān)機
init 5 - 初始化圖形化界面(如果有)
shutdown 10 - 10分鐘后關(guān)機
shutdown -c - 取消關(guān)機
shutdown -r - 重啟
shutdown now - 馬上關(guān)機
write 用戶名 - 給某個用戶發(fā)信息
Ctrl + d - 結(jié)束輸入
wall - 給所有人發(fā)送廣播消息
mesg y/n - 是否接收別人發(fā)送的消息
pwd - 打印當前工作目錄(print working directory) /root為超級管理員的用戶組目錄
/home/yuxiaoyu (yuxiaoyu普通用戶的用戶目錄)
cd - (change directory)改變目錄
cd / - 去到根目錄
cd /proc - 從根目錄開始的絕對路徑
cd proc - 以當前路徑為基準的相對路徑
cd .. - 回到上一級目錄
cd . - 當前目錄
cd ~ - 當前用戶的用戶組目錄
ls - (list directory contents)查看目錄下的文件
ls -a -- (all)查看當前目錄下面所有文件和文件夾(包括隱藏的驰唬,以.開頭的是隱藏的)
ls -a -l -- (long)長格式查看,前面是d的是文件夾,是-的是文件沿癞。
權(quán)限,連接數(shù)矛渴,用戶名椎扬,用戶組
ls -al / -- 根目錄長格式查看
ls -l /etc -- etc目錄長格式查看,不看隱藏
ls -lR /etc -- 加R是遞歸式查看具温,遇到文件夾就繼續(xù)查看
ls -r -- 反向排列
ls -S -- 按照文件大小排序
ls -s -- 打印文件大小
etc放了系統(tǒng)中比較重要的配置文件(extro configue)
media mnt - 外接存儲設(shè)備掛摘(U盤)
proc - 正在運行的進程對應(yīng)的文件
cat - (concatenate連結(jié))查看文件內(nèi)容cat /etc/centos-release
可以用Tab鍵補全命令和文件名蚕涤,雙擊命令可以看全部命令,q退出查看所有命令
1bit - 8*1bit -> 1Byte
1024B -> 1KB
1024KB -> 1MB
1024MB -> 1GB
1024GB -> 1TB
1024TB -> 1PB
usr是用戶安裝軟件的目錄铣猩,軟件默認在usr/local下面揖铜,usr/share裝程序的數(shù)據(jù)
Ctrl + C (快捷鍵)中斷程序的執(zhí)行
man - 文檔手冊(manual)
man ls - ls命令對應(yīng)的文檔說明
命令 --help - 查看命令的幫助
whatis 命令 - 對命令進行說明
mkdir 文件夾名 - 創(chuàng)建文件夾(make directory)
rmdir 文件夾名 - 刪除文件夾(remove empty directory)(只能刪除空文件夾)
mkdir -p abc/hello - 創(chuàng)建abc以及abc里面的hello文件夾(-p為parent)
touch 文件名 - 創(chuàng)建一個空文件
echo 內(nèi)容 > 文件名 - 將內(nèi)容重定向到指定文件( >是輸出重定向)
wget https://www.sohu.com/index.html - 聯(lián)網(wǎng)獲取文件,為下載的搜狐首頁
cat -n index.html - 帶行號查看獲取到的首頁文件
rm 文件名 - 刪除指定文件(需要輸入y/n進行確認)
rm -f 文件名 - 強制刪除指定文件
rm -rf 目錄名 - 遞歸強制刪除文件夾名
alias rm='rm -f' - alias是別名命令达皿,將rm -f 別名為rm
unalias rm - 取消rm的別名天吓,取消后要恢復系統(tǒng)默認設(shè)置需要重新登入
history - 歷史命令記錄
!歷史命令編號 - 再次執(zhí)行第幾條歷史命令(配合history使用)
\!
- 對感嘆號進行轉(zhuǎn)義
cp 文件名 新文件名 - 拷貝文件峦椰,并命名為新文件名
cp 文件名 文件路徑/新文件名 - 拷貝文件到指定路徑
cp -r 目錄名 新目錄名 - 遞歸拷貝文件夾為新文件夾
mv - 移動文件或者文件夾
mv 文件名 文件路徑/新文件名 - 剪切文件到新目錄
如果在同一個目錄移動龄寞,相當于是重命名
操作文件:
cat
less / more - 分屏查看,空格換頁汤功,回車換行
head / tail - 查看文件前面/后面
head -5 index.html - 查看首頁前5行
wc 文件名 - 對文件行數(shù) 單詞數(shù) 字符數(shù)進行統(tǒng)計
wc -l(行數(shù)) / -w(單詞數(shù)) 文件名
sort 文件名 - 對文件內(nèi)容排序
sort index.html | head -10
sort -r index.html - 反序排序
sort不會改變源文件
uniq 文件名 - 對文件中相鄰的重復內(nèi)容去重
| - 管道物邑,連接兩個進程(命令),將上一個進程的輸出滔金,作為下一個進程的輸入
sort index.html | uniq - 排序并去重
sort index.html | uniq | > index2.html - 排序去重并存到新文件中(覆蓋)
sort index.html | uniq | >> index2.html - 排序去重并存到新文件中(追加)
>
輸出重定向色解, >>
追加輸出重定向, 2>
錯誤輸出重定向(只有報錯的信息輸出到重定向文件中)
ls -R / > ok.txt 2> error.txt (普通用戶登錄時) - 將正確的信息輸入到ok.txt,錯誤信息輸出到error.txt
ctrl + w (快捷鍵)敲命令時刪除輸入的一段內(nèi)容
gzip / gunzip 壓縮/解壓縮
xz -z / -d 壓縮/解壓縮
tar是Linux系統(tǒng)下的歸檔文件(將多個文件合成一個文件)(相當于window下的rar文件)
tar -xvf 歸檔文件的名字 - 解歸檔鹦蠕, v是否有中間過程冒签,f指定文件名
tar -cvf 歸檔后文件的名字 ./*(將當前路徑所有文件歸檔) / 要歸檔的文件名 - 生成歸檔文件
CPython -Python解釋器是用C語言實現(xiàn)的
Jython - Python解釋器是用Java語言實現(xiàn)的
IronPython - Python解釋器使用C#語言實現(xiàn)的
PyPy - Python解釋器是用Python語言實現(xiàn)的(即時編譯在抛,性能最好的)
Redis - NoSQL(官方下源代碼钟病,最新版的) https://redis.io
《鳥哥的Linux私房菜》