关于linux命令的书,关于LINUX命令行(一)
為什么使用命令行?
大多數計算機用戶只熟悉圖形用戶界面(GUI:graphical user interface),并且產品供應商和此領域的學者會灌輸給永華這樣的思想,命令行界面(CLI:command line interface)是過去使用的一種很恐怖的東西。
一個好的命令行界面,是用來和計算機進行交流溝通的非常有效的方式,“圖形用戶界面讓簡單的任務更容易完成,而命令行界面使完成復雜的任務成為可能”。
生物信息領域,能高效處理大量的數據。生物信息的軟件大多為開源軟件,LINUX版本。它是一個多用戶的操作系統,充分利用購置的硬件資源和軟件資源。
什么是shell?
shell就是一個程序,它接受從鍵盤輸入的命令,然后把命令傳遞給操作系統去執行。
bash(Bourne Again SHell),最初Unix上有Steve Bourne寫成shell程序sh的增強版。
終端仿真器
當使用圖形用戶界面時,我們需要另一個和shell交互的叫做終端仿真器的程序。
** 在Mac里就是Terminal **
第一個按鍵
qiyindeMacBook-Pro:~ qiyin$
這叫做shell提示符,通常包括你的用戶名和主機名,緊接著是當前工作目錄和一個美元符號。
輸入6789,這個命令沒有意義,shell會提示錯誤信息。
命令歷史
iyindeMacBook-Pro:~ qiyin$ 6789
-bash: 6789: command not found
qiyindeMacBook-Pro:~ qiyin$ 6789
如果按下上箭頭,會看到剛才輸入的命令,這就叫做命令歷史。一般保存最后輸入的500個命令,按下下箭頭按鍵,先前輸入的命令消失。
輸入簡單的命令行
qiyindeMacBook-Pro:~ qiyin$ date
2018年 1月19日 星期五 10時15分22秒 CST
qiyindeMacBook-Pro:~ qiyin$ cal
一月 2018
日 一 二 三 四 五 六
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
結束終端會話
輸入exit命令來終止一個終端會話。
文件系統中的跳轉
pwd-print name of current working directory (打印當前工作目錄名)
cd-change direttory(更改目錄)
ls-list directory contents(列出目錄內容)
理解文件系統樹
所有文件組成一棵樹型目錄,這個目錄樹可能包含文件和其他目錄。文件系統中的第一級目錄稱為根目錄,根目錄包含文件和子目錄,子目錄包含更多的文件和子目錄,以此類推。
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin
這是我的家目錄,家目錄是唯一允許用戶對文件進行寫入的地方
絕對路徑
絕對路徑開始于根目錄,緊跟著目錄樹的一個個分支,一直到達所期望的目錄或文件。
相對路徑
相對路徑開始于工作目錄。
特殊的符號表示相對位置
“.”指的是工作目錄
“..”指的是工作目錄和父目錄
絕對
相對
from /Users/qiyin to /Users
cd /Users
cd ..
from /Users to /Users/qiyin
cd /Users/qiyin
cd ./qiyin
qiyindeMacBook-Pro:~ qiyin$
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin
qiyindeMacBook-Pro:~ qiyin$ cd /Users
qiyindeMacBook-Pro:Users qiyin$ pwd
/Users
qiyindeMacBook-Pro:Users qiyin$ cd /Users/qiyin
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin
qiyindeMacBook-Pro:~ qiyin$ cd ..
qiyindeMacBook-Pro:Users qiyin$ pwd
/Users
qiyindeMacBook-Pro:Users qiyin$ cd ./qiyin
qiyindeMacBook-Pro:~ qiyin$ pwd
/Users/qiyin
tip:"./"可以省略
ls樂趣
通過ls,我們可以知道目錄的內容,以及各種各樣重要文件和目錄的屬性。
選項和參數
命令名經常會帶有一個或多個用來更正命令行為的選項,選項后面會帶有一個或多個參數,這些參數是命令作用的對象。
大多數命令使用的選項,是由一個中劃線加上一個字符組成,例如“-l”.
ls命令選項
表
確定文件類型
用file命令來確定文件的類型,形式為“file filename”
瀏覽文件內容
用less命令來瀏覽文本文件的程序,形式為“less filename”
例如,要查看一個定義了系統中全部用戶身份的文件,輸入“less /etc/passwd”
表
操作文件和目錄
cp - 復制文件和目錄
mv - 移動/重命名文件和目錄
mkdir - 創建目錄
rm - 刪除文件和目錄
ln - 創建硬鏈接和符號鏈接
通配符
shell頻繁的使用文件名,shell提供了特殊字符來幫助你快速指定一組文件名。這些特殊字符叫做通配符,使用它允許你依據字符類型來選擇文件名。
rm命令用到通配符,用ls命令來測試,看到要刪除的文件列表。
硬鏈接與符號鏈接
每個文件默認會有一個硬鏈接,這個硬鏈接給予文件名字。我們每創建一個硬鏈接,就為一個文件創建了一個額外的目錄項。
創建符號鏈接是為了克服硬鏈接的兩個缺點:硬鏈接不能跨越物理設備,硬鏈接不能關聯目錄,只能是文件。符號鏈接生效,是通過創建一個特殊類型的文件,這個文件包含一個關聯文件或目錄的文本指針。
什么是鏈接?
鏈接簡單說是一種文件共享的方式,是POSIX中的概念,主流文件系統都支持鏈接文件。可以理解為windows中常見的快捷方式。
不是很明白?
跳轉大佬的科普文,看完后,再通過練習感受一下吧!
練習
1、創建目錄playground
2、在playground的目錄下創建dir1、dir2
3、復制文件
從/etc目錄復制passwd到當前目錄,使用cp命令,再執行ls命令看到文件
qiyindeMacBook-Pro:playground qiyin$ cp /etc/passwd .
qiyindeMacBook-Pro:playground qiyin$ ls -l
total 16
drwxr-xr-x 2 qiyin staff 68 1 20 17:12 dir1
drwxr-xr-x 3 qiyin staff 102 1 20 17:12 dir2
-rw-r--r-- 1 qiyin staff 5925 1 22 23:08 passwd
注意 在命令末尾加個“ .”,就是將passwd復制快捷方式到當前目錄
4、移動和重命名文件
將passwd重命名為fun,用到mv命令。將fun移動到dir1。再把fun從dir1移動到目錄dir2,最后把fun文件帶回到當前目錄。
tips:這里移動和重命名都是mv命令,所以在同一個文件夾下面,就執行重命名。在不同文件夾,并且那個文件夾沒有的文件,就是移動。
qiyindeMacBook-Pro:playground qiyin$ mv passwd fun
qiyindeMacBook-Pro:playground qiyin$ mv fun dir1
qiyindeMacBook-Pro:playground qiyin$ mv dir1/fun dir2
qiyindeMacBook-Pro:playground qiyin$ mv dir2/fun .
qiyindeMacBook-Pro:playground qiyin$ ls
dir1 dir2 fun
5、創建硬鏈接
"ls -li"可以展示文件索引節點的信息,第一字段中,fun和fun-hard共享一樣的索引節點號,證實這兩個文件是一樣的文件。
qiyindeMacBook-Pro:playground qiyin$ ln fun fun-hard
qiyindeMacBook-Pro:playground qiyin$ ln fun dir1/fun-hard
qiyindeMacBook-Pro:playground qiyin$ ln fun dir2/fun-hard
qiyindeMacBook-Pro:playground qiyin$ ls -li
total 32
9860853 drwxr-xr-x 3 qiyin staff 102 1 22 23:45 dir1
9860854 drwxr-xr-x 3 qiyin staff 102 1 22 23:46 dir2
9990311 -rw-r--r-- 4 qiyin staff 5925 1 22 23:08 fun-hard
9990311 -rw-r--r-- 4 qiyin staff 5925 1 22 23:08 fun
6、創建符號鏈接(軟連接)
這里使用了相對路徑,也可以使用絕對路徑:
“ln -s /Users/qiyin/playground/fun dir1/fun-sym”
可以看到創建的符號鏈接中文件索引節點和原來的是不一樣的。
qiyindeMacBook-Pro:playground qiyin$ ln -s ../fun dir/fun-sym
qiyindeMacBook-Pro:playground qiyin$ ln -s ../fun dir1/fun-sym
qiyindeMacBook-Pro:playground qiyin$ ln -s ../fun dir2/fun-sym
qiyindeMacBook-Pro:playground qiyin$ ls -l dir1
total 24
-rw-r--r-- 4 qiyin staff 5925 1 22 23:08 fun-hard
lrwxr-xr-x 1 qiyin staff 6 1 23 00:07 fun-sym -> ../fun
qiyindeMacBook-Pro:playground qiyin$ ls -li
total 40
9860853 drwxr-xr-x 4 qiyin staff 136 1 23 00:07 dir1
9860854 drwxr-xr-x 4 qiyin staff 136 1 23 00:07 dir2
9990311 -rw-r--r-- 4 qiyin staff 5925 1 22 23:08 fun-hard
9990311 -rw-r--r-- 4 qiyin staff 5925 1 22 23:08 fun
9993619 lrwxr-xr-x 1 qiyin staff 3 1 23 00:05 fun-sym -> fun
總結
以上是生活随笔為你收集整理的关于linux命令的书,关于LINUX命令行(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 字符串转数字排序,linux
- 下一篇: linux日志使用方法,Linux 日志