按照老師提供的圖文教程下載安裝VBox的過程的很順利,可是在下載Ubuntu映像時,英文網站下載失敗,經過雲班課中王yj同窗提供的中文下載地址成功下載了映像,裝好以後加強功能時遇到以下問題,查找雲班課歷史消息時找到了解決方法,就是彈出光盤,再次點擊加強功能。html
加強功能時巧了代碼以後,問我「yes or no」我回答了5個yes以後程序開始運行,最後不斷輸出「y」,我覺得程序崩了,就給它強制關閉了.......linux
我也不知道加強功能是否成功,再次敲了一遍代碼,結果就是下圖所示的內容,去墨雲班問了一下,同窗說這是安裝成功了。shell
Linux基礎入門——經過實驗學習知識vim
學習中遇到的問題都能在雲班課中獲得解答,其中大部分爲其餘同窗問過的歷史消息,其餘小問題學霸也會爲我解答。安全
第一節bash
瞭解Linux的發展歷程,同時也瞭解了Linux與Windows的共性與不一樣,Linux給我印象最深入的就是系統的安全性和穩定性以及熟練使用以後的高效性。app
第二節工具
在瞭解了終端的概念和sell以後,就是開始命令行操做實驗的時候了。oop
重要的快捷鍵:學習
Tab:命令補全,對於我這種英文基礎比較差的同窗來講,這是個很重要的快捷鍵,在我不能熟記命令時,只需輸入開頭,就能獲得我想輸入的命令。
ctrl+c:強行終止命令,在程序出現問題時避免了程序的失控。
其餘經常使用快捷鍵:
Ctrl+d | 鍵盤輸入結束或退出終端 |
Ctrl+s | 暫停當前程序,暫停後按下任意鍵恢復運行 |
Ctrl+z | 將當前程序放到後臺運行,恢復到前臺爲命令fg |
Ctrl+a | 將光標移至輸入行頭,至關於Home鍵 |
Ctrl+e | 將光標移至輸入行末,至關於End鍵 |
Ctrl+k | 刪除從光標所在位置到行末 |
Alt+Backspace | 向前刪除一個單詞 |
Shift+PgUp | 將終端顯示向上滾動 |
Shift+PgDn | 將終端顯示向下滾動 |
第三節:
功能 |
命令 |
查看用戶 |
$ who am i |
建立用戶 |
sudo adduser (Yuehy) |
刪除用戶 |
$ sudo deluser (Yuehy) --remove-home |
切換登陸用戶 |
su –l lilei |
退出當前用戶 |
exit 或 ctrl + d |
查看屬於哪些用戶組 |
groups …(用戶名)或cat /etc/group | sort |
過濾 |
cat /etc/group | grep –E 「shiyanlou」 |
將其餘用戶添加到sudo組 |
sudo usermod -G sudo …(用戶名) |
以較長格式輸出當前目錄下的文件(查看文件權限) |
ls -l |
顯示除了 '.','..' 以外的全部包含隱藏文件 |
ls -A |
查看一個目錄的完整屬性 |
ls -dl (目錄名) |
顯示全部文件大小並按大小排序 |
ls –AsSh |
新建一個x文件 |
touch x |
修改文件全部者爲shiyalou |
sudo chown shiyanlou … |
修改…權限 |
chmod 700(順序對應rwx) …或chmod go-rw(+/-) ... |
第四節
功能 |
命令 |
獲取當前所在路徑(絕對路徑) |
pwd |
進入上一級目錄 |
cd .. |
進入你的「home」目錄 |
cd ~ 或cd /home/<你的用戶名> |
以絕對路徑的方式進入 /usr/local/bin 目錄 |
cd /usr/local/bin |
以相對路徑的方式進入 /usr/local/bin 目錄 |
cd ../../usr/local/bin |
建立名爲…的空目錄 |
mkdir … |
同時建立父目錄 |
mkdir -p father/son/grandson |
複製一個文件test到指定目錄 |
cp test father/son/grandson |
複製一個目錄到指定目錄 |
cp -r father family |
刪除一個文件或目錄 |
rm … |
使用-f參數強制刪除 |
rm -f … |
刪除目錄 |
rm -r … |
移動到目錄... |
mv file1 ... |
重命名文件 |
mv old nes |
查看…文件 |
cat … |
產看文件並顯示行號 |
cat -n … |
分頁查看文件 |
more … |
用head和tail命令查看文件 |
tail /etc/passwd |
只看一行 |
tail -n 1 /etc/passwd |
用file命令查看文件的類型 |
file /bin/ls |
第五節
功能 |
命令 |
建立一個變量名爲 tmp 的變量 |
declare tmp |
變量賦值 |
tmp=shiyanlou |
讀取變量的值 |
echo $tmp |
打印相關環境變量 |
set(全部環境變量),env(與當前用戶有關的變量),export(導出爲環境變量的變量) |
將命令輸出經過管道|使用sort命令排序,再重定向到對象文本文件中 |
export temp_env=shiyanlou ;env|sort>env.txt;export|sort>export.txt;set|sort>set.txt |
比較導出的幾個文件的內容 |
vimdiff env.txt export.txt set.txt |
基於實驗樓環境建立子shell |
zsh |
temp是shell中的變量,導出爲環境變量 |
export temp |
建立一個Shell腳本文件 |
vim hello_shell.sh |
執行腳本 |
./hello_shell.sh |
用gcc生成可執行文件 |
gcc -o hello_world hello_world.c |
添加自定義路徑到「PATH」環境變量 |
PATH=$PATH:/home/shiyanlou/或echo "PATH=$PATH:/home/shiyanlou/mybin" >> .zshrc |
對path進行變量修改 |
${path#字符串},${path%字符串},${path##字符串},${path%%字符串},${path//舊字符串/新字符串},${path/舊字符串/新字符串} |
刪除變量temp |
unset temp |
讓.zshrc文件當即生效 |
source .zshrc或 . ./.zshrc |
搜索相關的命令 |
whereis(只能搜索二進制文件(-b),man幫助文件(-m)和源代碼文件(-s) ),which(肯定是否安裝了某個指定的軟件,只從PATH環境變量指定的路徑中去搜索命令),find,locate(指定目錄下的不一樣文件類型) |
查找 /etc 下全部以 sh 開頭的文件 |
locate /etc/sh |
查找 /usr/share/ 下全部 jpg 文件 |
locate /usr/share/*.jpg |
第六節
功能 |
命令 |
使用zip打包文件夾 |
zip -r -q -o shiyanlou.zip /home/shiyanlou |
查看打包後文件的大小 |
du -h shiyanlou.zip |
設置壓縮級別爲9和1(9最大,1最小),從新打包 |
zip -r -9 -q -o shiyanlou_9.zip /home/shiyanlou -x ~/.zip ; zip -r -1 -q -o shiyanlou_1.zip /home/shiyanlou -x ~/.zip |
用du命令分別查看默認壓縮級別、最低、最高壓縮級別及未壓縮的文件的大小 |
du -h -d 0 *.zip ~ |
建立加密zip包 |
zip -r -e -o shiyanlou_encryption.zip /home/shiyanlou |
使在 Linux 建立的 zip 壓縮文件在 Windows 上解壓後沒有任何問題 |
zip -r -l -o shiyanlou.zip /home/shiyanlou |
將shiyanlou.zip解壓到當前目錄 |
unzip shiyanlou.zip |
使用安靜模式,將文件解壓到指定目錄 |
unzip -q shiyanlou.zip -d ziptest |
只查看壓縮包的內容 |
unzip -l shiyanlou.zip |
在解壓時指定編碼類型 |
unzip -O GBK 中文壓縮文件.zip |
從指定文件或目錄建立壓縮包或添加文件到壓縮包 |
rm *.zip;rar a shiyanlou.rar . |
從指定壓縮包文件中刪除某個文件 |
rar d shiyanlou.rar .zshrc |
只查看不解壓文件 |
rar l shiyanlou.rar |
全路徑解壓 |
unrar x shiyanlou.rar |
去掉路徑解壓 |
unrar e shiyanlou.rar tmp/ |
建立一個 tar 包(只打包,不壓縮) |
tar -cf shiyanlou.tar ~ |
解包一個文件(-x參數)到指定路徑的已存在目錄(-C參數) |
tar -xf shiyanlou.tar -C ... |
只查看不解包文件 |
tar -tf shiyanlou.tar |
保留文件屬性p和跟隨連接h(符號連接或軟連接) |
tar -cphf etc.tar /etc |
使用gzip來壓縮文件 |
tar -czf shiyanlou.tar.gz ~ |
解壓*.tar.gz文件 |
tar -xzf shiyanlou.tar.gz |
解壓*.tar.xz文件 |
-J |
解壓*tar.bz2文件 |
-j |
第七節
功能 |
命令 |
查看磁盤的容量 |
df |
以易讀方式查看磁盤容量 |
df -h |
查看目錄容量 |
du ... |
以易讀方式查看目錄容量 |
du -h |
查看目錄深度 |
du -h -d 0 ~(只查看1級目錄) ;du -h -d 1 ~(只查看2級) |
用dd命令從標準輸入讀入用戶輸入(輸出到文件) |
dd of=test bs=10 count=1(或dd if=/dev/stdin of=test bs=10 count=1) |
(輸出到標準輸出) |
dd if=/dev/stdin of=/dev/stdout bs=10 count=1 |
將輸出的英文字符轉換爲大寫再寫入文件 |
dd if=/dev/stdin of=test bs=10 count=1 conv=ucase |
從/dev/zero設備建立一個容量爲256M的空文件 |
dd if=/dev/zero of=virtual.img bs=1M count=256 |
使用mkfs將虛擬磁盤鏡像格式化爲ext4文件系統 |
sudo mkfs.ext4 virtual.img |
查看linux支持哪些文件系統 |
ls –l /lib/modules/$(uname -r)/kernel/fs |
用mount查看主機已經掛載的文件系統 |
sudo mount |
掛載虛擬磁盤鏡像到/mnt目錄 |
mount -o loop -t ext4 virtual.img /mnt |
以只讀方式掛載 |
mount -o loop --ro virtual.img /mnt(或mount -o loop,ro virtual.img /mnt) |
用umount命令卸載已掛載磁盤 |
sudo umount /mnt(掛載點) |
爲磁盤分區 |
fdisk |
查看硬盤分區表信息 |
sudo fdisk -l |
進入磁盤分區模式 |
sudo fdisk virtual.img(操做完成後輸入p查看結果,最後輸入w寫入分區表) |
創建鏡像與迴環設備的關聯 |
sudo losetup /dev/loop0 virtual.img |
查看全部迴環設備 |
ls /dev/loop* |
刪除設備關聯 |
sudo losetup -d /dev/loop0 |
用kpartx工具創建虛擬設備的映射 |
sudo kpart kpartx -av /dev/loop0 |
取消映射 |
sudo kpart kpartx -dv /dev/loop0 |
創建映射後,將其所有格式化爲ext4 |
sudo mkfs.ext4 -q /dev/mapper/loop0p1 |
在/media目錄下新建四個空白目錄用於掛載虛擬磁盤 |
mkdir -p /media/virtualdisk_{1 . . 3} |
掛載磁盤分區 |
sudo mount /dev/mapper/loop0p1 /media/virtualdisk_1(以此類推) |
卸載磁盤分區 |
sudo umount /dev/mapper/loop0p1(以此類推) |
第八節
功能 |
命令 |
用type命令區分命令是內建的仍是外部的 |
type …(命令名) |
zsh中內置沒有help,進入bash中 |
bash |
進入bash內置中有help |
help ls(不能夠,由於help用於顯示shell內建命令) |
對外建命令 |
ls --help |
使用man獲取幫助 |
man …(命令名) (用q退出) |
使用info獲取更多幫助 |
info …(命令名) |