1. 程式人生 > >20165318 預備作業3 Linux安裝及學習

20165318 預備作業3 Linux安裝及學習

n) 提問 中文 ted ubunt 復制文件 分配 lar 查找

Linux安裝及學習

一、VirtualBox和Ubuntu的安裝

我安裝的是VirtualBox 5.2.6和Ubuntu 16.04 LTS,安裝過程按照老師博客中的步驟依次進行,出現了以下幾個問題。
Q:在創建虛擬機,選擇虛擬機系統版本時,選項中沒有Ubuntu (64-bit)。技術分享圖片

A:在上網查詢後發現,需要CPU允許硬件虛擬化,需要進入BIOS,選擇Configuration中的Intel Uirtual Technology,將Disabled改為Enabled 後保存。

Q:分配共享數據空間過程中,由於命令沒有輸出,在設置完成後,發現目錄下文件不能共享。

A:在仔細檢查過我的命令與婁老師的命令後發現,在“sudo mount -t vboxsf rocshare /mnt/shared" 中沒有將rocshare改成我自己的共享文件。發現這個問題後,我將正確的命令又執行了一遍,最終達到了共享的目的。

收獲

這是我第一次獨立在電腦上安裝系統,剛開始感覺會很難,但按照老師的教程一步一步做,有問題時盡量自己嘗試解決,並借鑒同學們在藍墨雲班課中的提問,最終完成虛擬機和系統的安裝。我起初對虛擬機幾乎一無所知,只是根據教程一步步完成,輸入命令時也並不知道有什麽用處,在經過實驗樓的學習後,我對Linux新穎的操作方法很好奇,也學會了一些基本的命令。

二、Linux命令學習

Linux中命令格式為:
command [options] [arguments] //中括號代表是可選的,即有些命令不需要選項也不需要參數
其中選項(option)是調整命令執行行為的開關,選項不同決定了命令的顯示結果不同,參數(arugment)是指命令的作用對象。

快捷鍵

Ctrl+Alt+T:打開終端。
Ctrl+Alt+F1~F7:切換終端。
Ctrl+Shift+T:新建標簽頁。
Ctrl+C:中斷程序。
Ctrl+d:鍵盤輸入結束或輸出終端。
Ctrl+s:暫停當前程序,按任意鍵恢復運行。
Ctrl+z:將當前程序放在後臺運行。
fg:後臺運行程序恢復前臺。
Ctrl+a:光標移至輸入行頭,相當於Home
Ctrl+e:光標移至輸入行末,相當於End
Ctrl+k:刪除從光標所在位置到行末。
Alt+Backspace:向前刪除一個單詞。
Shift+PgUp:將終端顯示向上滾動。
Shift+PgDn:將終端顯示向下滾動。
Alt+數字+N

:跳轉標簽頁。
Tab:補全終端命令,在C語言編程中也常用。
上鍵:切換歷史命令。

通配符

*:匹配0或多個字符。
:匹配任意一個字符。
[list]:匹配list中的任意單一字符,需用逗號隔開。
[!list]:匹配除list中任意單一字符以外的字符,!後面的應加括號(),括號內用逗號隔開。
[c1-c2]:匹配c1-c2中任意單一字符。
{string1,string2,...}:匹配 string1 或 string2 或...中的其一字符串。
{c1..c2}:匹配全部字符。

用戶

who:查看用戶。
相關參數:
-a:打印能打印的全部。
-d:打印死掉的進程。
-m:和am i,mom likes相同。
-q:打印當前登錄用戶數和用戶名。
-u:打印當前登錄用戶登錄信息。
-r:打印運行等級。

sudo:以特權級別執行命令(root權限)。
sudo adduser 用戶名:新建用戶。
su:切換用戶。
exit:退出用戶或終端,同Ctrl+d
groups:查看用戶組,也可通過查看/etc/group文件。
usermod:給用戶添加用戶組,其中可以使用sudo usermod -G sudo 用戶名將用戶添加到sudo用戶組。
deluser:刪除用戶。

文件操作

ls:通過不同的參數可以查看文件的權限、大小、文件名等等屬性。
相關參數:
-A:顯示除了 .(當前目錄)和 ..(上一級目錄)之外的所有文件,包括隱藏文件(Linux 下以 . 開頭的文件為隱藏文件)。
-Al:查看某一個目錄的完整屬性。
-dl:<目錄名>:顯示所有文件大小。
-AsSh:其中小s為顯示文件大小,大 S 為按文件大小排序,可用man知道如何按其它方式排序。

chown:改變文件擁有者,sudo chown <新所有者> <文件名>
chmod:更改文件權限
二進制數字表示:chmod 數字 文件名
加減賦值操作:go 還有 u 分別表示 group、others 和 user,+-分別表示增加和去掉相應的權限例:chmod go-rw 文件名

touch:創建文件。
cp:復制文件,cp 文件名 路徑
rm:刪除,參數-f可以強制刪除參數。
mv:移動文件:mv 源目錄文件 目的目錄,重命名文件:mv 舊的文件名 新的文件名
rename:批量重命名。
cat:正序顯示打印文件內容到標準輸出(終端),加上 -n參數顯示行號
tac:倒序打印文件內容到標準輸出(終端)
nl:添加行號並打印,比cat -n 更專業的行號打印命令
more,less:分頁查看。
head ,tail: 查看文件的頭幾行(默認為 10 行,不足 10 行則顯示全部)和尾幾行。
file:查看文件類型。

目錄

cd:進入某個目錄。
pwd: 獲得絕對路徑。
.:當前目錄。
..:上級目錄。
-:上一次所在目錄。
~:當前用戶的home。
mkdir:創建目錄。
cp:加參數r或R復制指定目錄,cp 文件名 路徑
rm:加參數r或R刪除指定目錄。

文件搜索

whereis:簡單快速, 直接從數據庫中查詢,只能搜索二進制文件(-b),man 幫助文件(-m)和源代碼文件(-s)。
locate:快而全,手動執行一次 updatedb 命令,用於更新它的查找對象——“ /var/lib/mlocate/mlocate.db ”數據庫,它可以用來查找指定目錄下的不同文件類型。
which:小而精,通常使用 which 來確定是否安裝了某個指定的軟件,因為它只從 PATH 環境變量指定的路徑中去搜索命令
find:精而細,它不但可以通過文件類型、文件名進行查找而且可以根據文件的屬性(如文件的時間戳,文件的權限等)進行搜索。find 的第一個參數是要搜索的地方: 基本命令格式為 find [path] [option] [action],例如:sudo find /etc/ -name 文件或目錄

  • 與時間相關的命令參數:
    -atime:最後訪問時間
    -ctime:最後修改文件內容的時間
    -mtime:最後修改文件屬性的時間
  • 與這些參數相關的天數命令(以 -mtime 參數舉例)
    -mtime n:n 為數字,表示為在 n 天之前的“一天之內”修改過的文件
    -mtime +n:列出在 n 天之前(不包含 n 天本身)被修改過的文件
    -mtime -n:列出在 n 天之內(包含 n 天本身)被修改過的文件
    -newer file:file 為一個已存在的文件,列出比 file 還要新的文件名

文件打包與壓縮

du:查看文件的大小,壓縮文件的壓縮級別。
zip:壓縮打包文件。
相關參數:
-r:表示遞歸打包包含子目錄的全部內容。
-q: 表示為安靜模式。
-o: 表示輸出文件,需在其後緊跟打包輸出文件名。
-O: 解壓時可以指定編碼類型unzip -O GBK 中文壓縮文件.zip。

unzip:解壓縮zip文件。
tar:打包但不壓縮(不加參數)。
相關參數:
-c:打包。
-x:解包。
-f:接文件名。
-z:用gzip工具壓縮。
-J:用xz工具壓縮。
-j:用bzip2工具壓縮。

變量

declare:創建變量,用=對變量進行賦值。
$:引用變量的值。
set:打印當前 Shell 所有變量。
env:打印當前用戶相關的環境變量,還可以讓命令在指定環境中運行,範圍小於set。
export:打印導出成環境變量的變量,也能通過它將自定義變量導出為環境變量範圍比env更小。
PATH=$PATH:用戶名:添加自定義路徑(一定要使用絕對路徑)到“ PATH ”環境變量。
>>: 表示將標準輸出以追加的方式重定向到一個文件中。
> : 是以覆蓋的方式重定向到一個文件中。
unset:刪除變量。
source:使環境變量立即生效。

磁盤

df: 查看磁盤的容量,用參數-h增強可讀性。
du: 查看目錄的容量。
相關參數:
-d:指定查看目錄的深度。
-a:同--all 顯示目錄中所有文件的大小。
-s:同--summarize 僅顯示總計,只列出最後加總的值。

dd:轉換和復制文件,也可以讀取文件或寫入到這些文件。格式為:選項=值。選項ifof可以改變標準輸入和輸出。
mkfs:格式化磁盤。
mount:掛載磁盤。
unmount:卸載磁盤。
fdisk:為磁盤分區。

幫助

help:顯示內建命令簡要的幫助信息。對於外部命令可使用--help參數。
man:顯示手冊中的幫助信息。
info:比man命令更為詳細的GNU信息。
cheat:即“小抄”,簡潔地提供比man更容易理解的解釋與相應的例子,但是需要安裝。

20165318 預備作業3 Linux安裝及學習