Linux歷史
Linux是一套免費使用的類Unix操作系統(tǒng)
linux創(chuàng)始人: ?林納斯·托瓦茨
UNIX系統(tǒng)是一個多用戶,多任務(wù)的分時操作系統(tǒng)。
vim ? vim 是vi的改進版本
vi/vim是unix/linux中最基本,最常用,功能最強大的文本編輯器。
vi/vim有兩種模式:
命令模式:鍵盤上所有輸入的字符都當成命令(剛進入vim就是命令模式)
輸入模式:鍵盤上所有輸入的字符都當成文本內(nèi)容
輸入模式-->命令模式: Esc
命令模式-->輸入模式
i:insert 進入輸入模式后,光標不動
I:insert 進入輸入模式后,光標會移動到本行的行首
o:open 向下開路。在光標的下一行,新開一行。
O:open 向上開路。在光標的上一行,新開一行。
a:append 追尾。進入輸入模式后,光標向后移動一個字符。
A:append 追尾。進入輸入模式后,光標移動到行尾。
vim的刪除與修改命令
x:刪除光標所在的字符
dd:delete刪除光標所在的行,同時也有"剪切"的功能
ndd: ?n表示一個數(shù)字,刪除光標及以下的n行
r:replace 替換光標所在的單個字符
R:replace 替換光標及后面的多個字符(按Esc鍵退出替換)
vim退出命令
:q (quit)不保存退出(若修改了文件會詢問是否保存)
:q! 不保存強制退出
:w (write)保存
:w filename 保存內(nèi)容到指定的路徑名filename(另存為)
:wq 保存并退出
:x ?保存并退出
vim撤銷命令
u: undo
vim拷貝和粘貼命令:
yy: yanked 把當前行的內(nèi)容拷貝到剪貼板中去
nyy把光標及以下n行的內(nèi)容粘貼到剪貼板中去
p: paste 將剪貼板中的內(nèi)容貼在光標所在的行的后面
P: paste 將剪貼板中的內(nèi)容貼在光標所在的行的前面
vim搜索命令
/pattern(模式)
eg: ?/abc
n: 光標跳到下一個搜索結(jié)果
N:光標跳到上一個搜索結(jié)果
顯示行號
:set nu
:set nonu 取消行號
:行號
? ? 光標跳到指定的行
:$
光標跳到文件的最后一行
vim配置文件在主目錄下 ? .vimrc
ls -a
vim .vimrc
Ctrl+z 掛起vim ? ?fg命令返回
4.查看Linux說明手冊(manual)
man ?commandname/functionname ? 完整的手冊
vim: ?shift + K ?查看光標所在函數(shù)的第一章手冊
info commandname ?額外的幫助文檔
5,基本的系統(tǒng)維護命令
sync 同步,把緩沖區(qū)的數(shù)據(jù)寫去文件。
shutdown ?關(guān)機 ? shutdown -h 0(立即關(guān)機)
reboot ?重啟
passwd [username] 修改用戶密碼
su ?username ?切換用戶
sudo -s ?進入root用戶
exit 退出用戶或終端
clear 清屏
echo "string" 在標準輸出上顯示文字
date 輸出當前的日期
``反撇號(~鍵),里面加一個命令,整體表示引用命令的輸出結(jié)果
eg:
B=`date`
echo $B
TAB鍵: 自動補全命令
向上,向下方向鍵: 調(diào)出上一個/下一個命令
6,用戶管理
/etc/passwd :用戶信息文件
用戶名:口令:用戶ID(UID):用戶組(GID):用戶主目錄:用戶shell
/etc/group :用戶組的信息文件,在Linux下面是分組來管理用戶的
組名:口令:GID號:成員列表
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
這里組名是創(chuàng)建這個組的用戶(組長)的名字
GID是創(chuàng)建這個組的用戶(組長)的ID
adduser username //創(chuàng)建一個普通用戶
userdel username //刪除一個用戶
7,進程管理 ? process
ps: process status 查看進程的狀態(tài)信息
-e: every 每一個
-f: full 全部的
ps -ef: 查看每一個進程的全部信息
每個進程的信息都保存在一個文件目錄中
/proc/$PID
top:以CPU占用率來實時排名進程
kill:殺死一個進程
kill -9 ?$PID
8,linux文件系統(tǒng)
linux文件系統(tǒng)的組織形式 :樹狀
絕對路徑:以"/(根目錄)"開頭的路徑,叫做絕對路徑
相對路徑:不以"/(根目錄)"開頭的路徑,叫做相對路徑
相對路徑是以當前路徑為參照的,系統(tǒng)查找文件本質(zhì)上都是以絕對路徑來查找的。
在查找相對路徑時,是把當前目錄路徑和相對路徑合為絕對路徑再查找。
pwd:顯示當前目錄路徑
cd : change directory
cd /目錄名
在每個目錄下面都會有兩個特殊的隱藏的目錄
. ?:表示當前目錄
.. :表示上一層目錄
cd .. 返回上一層目錄
cd - ?返回上一次目錄
./程序名 ? 運行該程序
ls: list status 把某個文件(包含目錄)的狀態(tài)信息給列出來
ls ?[options] ?[文件名/目錄]
options:
-a: all ,把所有的文件都列舉出來。
在linux下以.開頭的文件,視為隱藏文件
-l:把文件的詳細信息給列舉出來
eg:
-rwxrw-r-- ? ?1 ? ? ? gec ? ? ?gec ? ? ?40 ? ? ? ? Feb ?16 ?19:40 ? test.txt
?硬鏈接數(shù) ? 用戶 ? ?用戶組 ? 文件大小 ? ? ? 最后修改時間 ? ?文件名
第一個字符表示文件類型:
- :普通文件(regular file),ASCII文本文件,二進制可執(zhí)行文件?
d :directory 目錄(文件夾)
b :block 塊設(shè)備文件
c :char 字符設(shè)備文件
l :link符號鏈接文件,指向另外一個文件
P :pipe 管道文件
s :socket套接字文件
下面的九個字符rwx表示文件對不同情況下的權(quán)限
r:read 讀的權(quán)限
w:write寫的權(quán)限
x:excute可執(zhí)行的權(quán)限,對目錄可執(zhí)行,表示可以進入目錄
分三組:
user/group/other
chmod :change mode 改變文件的模式(權(quán)限)
chmod ?權(quán)限 ?文件名
權(quán)限有兩種指定方式:
(1) ?u/g/o/a+/- ?r/w/x
(2) ?以八進制的形式表示權(quán)限位
0774
rm:remove 移除,刪除
rm [options] DEST
DEST:要刪除的目標文件,既可以是普通文件,也可以是目錄
options:
-r :recursive(遞歸),若DEST是目錄文件,必須要用遞歸刪除
-f :force(強制)。非交互模式
交互模式:在正式刪除前會詢問用戶是否確定要刪除
非交互模式:不會詢問直接刪除
cp: copy
copy [options] SOURCE DEST
SOURCE:源文件。既可以是普通文件也可以是目錄
DEST:目標文件。既可以是普通文件也可以是目錄
options:
-r:recursive(遞歸)
-f:force(強制)。非交互模式
mv: move移動 (既可以移動普通文件,也可以移動目錄)
mv SOURCE DEST
把SOURCE移動到DEST中去
eg: mv 1.txt ../
mv 1.txt 2.txt
把1.txt改名為2.txt
mkdir:make directory 創(chuàng)建一個目錄
mkdir ?目錄名
-p:parent 創(chuàng)建目錄時,如果父目錄不存在,則一并創(chuàng)建
rmdir:remove directory 刪除一個空目錄
file:查看一個文件的格式。在UNIX里文件的擴展名不能決定文件的格式。
顯示文本文件的內(nèi)容
cat 把文本文件的內(nèi)容全部一次性打印在終端
more 分屏顯示一個文本文件的內(nèi)容,按Enter一行一行顯示,空格鍵一屏一屏的顯示,q退出
less 分屏顯示一個文本文件的內(nèi)容,方向鍵上/下把內(nèi)容前后滑動,q退出
head -num 顯示文件的前num行
tail -num 顯示文件的末尾num行
創(chuàng)建鏈接文件
硬鏈接 ? ?ln ? ? ?target ? link_name
軟鏈接 ? ?ln ?-s ?target ? link_name
文件的壓縮和解壓縮
文件的壓縮實質(zhì)上分為歸檔和壓縮兩個過程
歸檔文件:將一組文件或目錄打包到一個文件中去
tar [options] tarfile ?filelist
-c ?create 創(chuàng)建一個歸檔文件
-f ?file ?指定歸檔文件的名字
-x ?extract 釋放一個歸檔文件
壓縮文件:將一個文件進行壓縮
壓縮: gzip ?xx ?==> xx.gz
解壓 ?gunzip xx.gz ==>xx
壓縮 ?bzip2 xx ==> xx.bz2
解壓 ?bunzip2 xx.bz2 ==> xx
我們可以一步完成歸檔壓縮這兩個過程
tar [options] tarfile ?filelist
-c create 創(chuàng)建一個歸檔文件
-f file 指定歸檔文件的名字
-v 顯示歸檔或釋放的過程信息
-x extract 釋放一個歸檔文件
-z 由tar生成歸檔文件,然后由gzip壓縮
-j 由tar生成歸檔文件,然后由bzip壓縮
eg:
壓縮:
tar -zcvf mp3.tar.gz ?1.mp3 2.mp3 3.mp3
tar -jcvf mp3.tar.bz2 1.mp3 2.mp3 3.mp3
解壓
tar -vxf mp3.tar.gz -C 目標目錄
tar -vxf mp3.tar.bz2 -C 目標目錄