vim 編輯器{
vim 文件名 -----> 編輯該文件
3種模式 : 插入 命令行 底行
插入模式
{
i ----> 插入光標當前位置
o ----> 插入光標下一行
a ----> 插入光標的后一位置
s ----> 插入光標所在位置 ---> 并刪除光標所在字符 ----> 替換
}
ESC ----> 退出插入模式 進入 命令行 模式
命令行模式
{
復制: Nyy ---> 從光標所在行開始復制 N行
粘貼: p ---> 粘貼到光標下一行
刪除: Ndd ---> 從光標所在行開始刪除 N行 ---> 類似于剪切
撤銷: u
}
底行模式 ESC ---> 切換到命令行模式
{
shift + : ----> 進入底行模式
w ----> 寫入 ----> 保存
q ----> 退出
q! ----> 強制退出
wq wq! x(等價于wq)
vsp 文件名 ----> 可以編輯另一個文件
}
}
TAB----> 補齊
linux下軟件包機制{
軟件之間 有 依賴關系
redhat ---> rpm軟件包機制 ----> rpm [-p -i -u ] install- filename ..
debian ---> deb軟件包機制 ----> apt ----> 聯網 (搜索軟件源 ----> 查找對應軟件依賴完成安裝)
dpkg ---> 軟件包已經下載好了 離線安裝
后綴 ---> .deb
軟件包 : 源碼包 ----> 需要自己編譯
二進制文件 -----> 可以直接安裝
dpkg
{
dpkg -i
dpkg -r
dpkg -P
//dpkg -L
//dpkg -s
}
apt
{
1、設置軟件源 ---> 選擇下載軟件的服務器 // /etc/apt/sources.list
2、從軟件源中獲取軟件索引文件 // sudo apt-get update
添加服務器的軟件包的索引文件。 存放在: /var/lib/apt/lists/目錄中
apt-get:用于管理軟件包,包括安裝、卸載、升級等操作;
apt-get subcommands [ --purge | --reinstall ] pkg
update: 更新軟件包列表信息
install: 下載安裝包
remove: 卸載
clean: 刪除所有已經下載的軟件包
check: 檢測依賴關系
source: 下載源碼包
--purge ----> 和remove 連用 完全卸載 會刪除 所有依賴
--reinstall ----> 和 install 連用 重新下載的意思
// 下載的 軟件包 /var/cache/apt/archives
apt-cache:用于查詢軟件包信息;
//apt-proxy:用于搭建APT代理服務器;
//apt-show-versions:用于顯示系統中軟件包版本信息;
//apt-config:用于讀取APT配置文件的簡單工具;
//apt-cdrom:用于將CD-ROM加入軟件源配置文件。
}
}
farsight@ubuntu:~/1709linux/day2$
用戶名@主機名:當前目錄名 $(命令行提示符) #(超級用戶命令行提示符)
shell基本命令{
shell ---> 解釋器 ---> 用戶 和 內核的交互
shell{
sh
csh
ksh
bash ----> 增強版 ----> 綜合了上面的所有shell
}
shell 腳本 : 命令的集合 ----> 批量化處理一些命令
關機: sudo shutdown -h now // 立刻關機
sudo shutdown -h +60 // 60min 后 關機
sudo shutdown -h +60 "byebye" // 提示關機并且通知
重啟: sudo shutdown -r now // 立即重啟
sudo shutdown -r +60 // 60min 后重啟
sudo reboot now // 立即重啟
命令格式: Command [-Options] Argument1 Argument2 … // 用空格 間隔
指令 選項 參數1 參數2…
多條命令 用 ;分號 隔開
//如果一條命令不能在一行寫完,在行尾使用反斜杠(\)標明該條命令未結束。
/ ----> 根目錄 -----> 所有目錄的起點
~ ----> 家目錄 ---> /home/farsight
查詢命令歷史 : history
pwd :查看當前絕對路徑
ls : 查看當前 路徑下 的 文件
// ls ---> 查看當前路徑下的所有文件 但是不包含隱藏文件(linux下隱藏文件 以.開頭)
cd 路徑名 : 跳轉到指定路徑
絕對路徑: 從 根目錄開始的路徑
相對路徑: 相對對當前位置的路徑
. ---> 當前路徑 .. ----> 當前路徑的上一級路徑
mkdir 路徑名 : 創建文件夾
rm -r 目錄名 刪除文件夾
touch 文件名 ---> 創建文件
rm 文件名 ----> 刪除文件
cp 源文件 目標文件 ---> 拷貝
mv 源文件 目標文件 ---> 移動 重命名
cat 文件 ---> 在終端打印顯示當前文件
echo 目標 ----> 在終端中輸出某目標
}
通配符{
* ----> 匹配任意長度的字符串
? ----> 匹配一個長度的字符
方括號([…]) ----> [匹配其中指定的一個字符]
方括號([ - ]) ----> 代表字符范圍
方括號([^…] ----> [匹配 除了指定的一個字符之外的 字符]
}
管道{ |
管道可以把一系列命令連接起來,意味著第一個命令的輸出將作為第二個命令的輸入
// cat 2.c | wc -w
}
命令置換{ ``
命令替換是將一個命令的輸出作為另一個命令的參數
// ls `pwd` ---> 將pwd 的結果作為 ls 的參數
}
輸入輸出重定向{
輸出重定向{ // 文件不存在 會創建
正確結果重定向 1> file (>)
錯誤結果重定向 2> file (&>)
>> file -----> 以追加的方式 重定向到文件
}
輸入重定向{
< file ----> 將file 作為輸入源輸入給命令
}
}
用戶命令{
添加用戶: sudo adduser llcc //會自動家目錄創建一個用戶目錄
修改密碼: sudo passwd llcc
修改用戶名: sudo usermod -d /home/lc -m -l lc llcc //必須修改用戶目錄名
修變用戶的組: sudo usermod –g farsight user1 // 修改組名
刪除用戶: sudo deluser --remove-home llcc // 刪除用戶的同時 刪除家目錄
刪除組: sudo delgroup llcc
}
進程{
ps:
-ef ----> 列舉所有進程 并且列舉詳細信息!
-A 列出所有的行程
-w 顯示加寬可以顯示較多的資訊
-au 顯示較詳細的資訊
-aux 顯示所有包含其他使用者的行程
top: ----->動態查看 3秒 刷新一次
pstree: ----> 進程樹查看
}
磁盤文件系統{
目前:ext4是linux系統最廣泛使用的一種格式
在ext3基礎上,對有效性保護,數據完整性,數據訪問速度,兼容性等做了改進!
FAT16 FAT32 ntfs 是windows上使用的格式
}
linux文件系統{
1、倒置的樹
2、一切皆文件
ls -l:
-rw-rw-r-- 1 farsight farsight 414 9月 12 14:27 1.c
文件類型及權限 硬連接數
- rw- rw- r--
文件類型 當前用戶的操作權限 同組用戶操作權限 其它組用戶
文件類型{
普通文件 -
目錄 d
字符設備 c
塊設備 b
符號連接 l
管道 p
套接字 s
}
權限{
r 讀
w 寫
x 執行
}
}
壓縮{
歸檔: tar ---> 加參數也可以壓縮 -j bzip2 -z gzip 解壓 -x
壓縮: tar -cjf 壓縮文件名 要壓縮的文件列表
tar -czf
解壓: tar -vxf 壓縮文件名
壓縮:
gzip .gz ---->具有很好的移植性,可在很多不同體系架構的系統中使用
gunzip
bzip2 .bz2
bunzip2
zip .zip ----> 使用有不同平臺
unzip
}
linux網絡{
}
-malign -double