Linux經常使用操做命令

轉自:

https://www.cnblogs.com/wj-1314/articles/7928562.html

 

如何鏈接Linux服務器?

  咱們通常會經過終端工具鏈接遠程Linux服務器,咱們如今的遠程Linux服務器在虛擬機上,因此咱們可使用終端工具在Windows上直接鏈接到虛擬機上的Linux服務器,而後實戰操做該Linux服務器。html

  首先鏈接虛擬機,而後配置網絡,配置網絡以前須要進入Linux系統裏面。linux

  鏈接windows和Linux,經過配置網絡鏈接,如何查看網絡是否鏈接了呢?web

  咱們能夠在終端測試,輸入 ifconfigshell

常見的Linux命令實戰

   在Linux中,咱們經常使用命令取操做,因此如今,咱們說一下常見的指令數據庫

1
2
3
4
5
6
7
ls 查看當前目錄下有什麼文件和文件夾
 
cd 進入當前目錄
 
mkdir 建立文件夾
 
touch 建立文件

  

  經常使用指令apache

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
1su 進入root權限賬戶解決賬戶權限不夠的問題
 
2cd 進入根目錄
 
3ls 查看當前目錄
 
4cd ../ 返回上一層目錄 cd /直接返回根目錄
 
5rm 刪除文件或文件夾 rm -f 刪除文件rm-rf 刪除文件夾
 
6mkdir 建立文件夾 touch 建立文件
 
7 cp 複製文件cp / / / mv 移動文件 mv / / /
 
8 vim 打開txt文件編輯 cat 查看txt文件
 
9 find /name 文件檢索

  

su 進入root權限vim

mkdir 新建一個文件windows

ls查看目錄安全

rm刪除文件bash

touch 建立一個文件  eg:  touch a.txt

tar 解壓縮

vim編輯文件裏面的內容

cat查看文件

find主要用於查找名爲何什麼的文件

 

1.1 pwd命令

該命令的英文解釋爲print working directory(打印工做目錄)。輸入pwd命令,Linux會輸出當前目錄。

1.2 cd命令

cd命令用來改變所在目錄。

cd /      轉到根目錄中
cd ~     轉到/home/user用戶目錄下
cd /usr 轉到根目錄下的usr目錄中-------------絕對路徑
cd test 轉到當前目錄下的test子目錄中-------相對路徑

1.3 ls命令

ls命令用來查看目錄的內容。

選項 含義
-a 列舉目錄中的所有文件,包括隱藏文件
-l 列舉目錄中的細節,包括權限、全部者、組羣、大小、建立日期、文件是不是連接等
-f 列舉的文件顯示文件類型
-r 逆向,從後向前地列舉目錄中內容
-R 遞歸,該選項遞歸地列舉當前目錄下全部子目錄內的內容
-s 大小,按文件大小排序
-h 以人類可讀的方式顯示文件的大小,如用K、M、G做單位
ls -l examples.doc 列舉文件examples.doc的全部信息

1.4 cat命令

cat命令能夠用來合併文件,也能夠用來在屏幕上顯示整個文件的內容。

cat snow.txt 該命令顯示文件snow.txt的內容,ctrl+D退出cat。

1.5 grep命令

grep命令的最大功能是在一堆文件中查找一個特定的字符串。

grep money test.txt

以上命令在test.txt中查找money這個字符串,grep查找是區分大小寫的。

1.6 touch命令

touch命令用來建立新文件,他能夠建立一個空白的文件,能夠在其中添加文本和數據。

touch newfile 該命令建立一個名爲newfile的空白文件。

1.7 cp命令

cp命令用來拷貝文件,要複製文件,輸入命令:

cp <source filename> <target filename>

cp t.txt Document/t    該命令將把文件t.txt複製到Document目錄下,並命名爲t。

選項 含義
-i 互動:若是文件將覆蓋目標中的文件,他會提示確認
-r 遞歸:這個選項會複製整個目錄樹、子目錄以及其餘
-v 詳細:顯示文件的複製進度

1.8 mv命令

mv命令用來移動文件。

選項 說明
-i 互動:若是選擇的文件會覆蓋目標中的文件,他會提示確認
-f 強制:它會超越互動模式,不提示地移動文件,屬於很危險的選項
-v 詳細:顯示文件的移動進度

mv t.txt Document    把文件t.txt 移動到目錄Document中。

1.9 rm命令

rm命令用來刪除文件。

選項 說明
-i 互動:提示確認刪除
-f 強制:代替互動模式,不提示確認刪除
-v 詳細:顯示文件的刪除進度
-r 遞歸:將刪除某個目錄以及其中全部的文件和子目錄

rm t.txt   該命令刪除文件t.txt

1.10 rmdir命令

rmdir命令用來刪除目錄。

經常使用指令

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
ls          顯示文件或目錄
 
      -l           列出文件詳細信息l(list)
 
      -a          列出當前目錄下全部文件及目錄,包括隱藏的a(all)
 
mkdir         建立目錄
 
      -p           建立目錄,若無父目錄,則建立p(parent)
 
cd               切換目錄
 
touch          建立空文件
 
echo            建立帶有內容的文件。
 
cat              查看文件內容
 
cp                拷貝
 
mv               移動或重命名
 
rm               刪除文件
 
      -r            遞歸刪除,可刪除子目錄及文件
 
      -f            強制刪除
 
find              在文件系統中搜索某文件
 
wc                統計文本中行數、字數、字符數
 
grep             在文本文件中查找某個字符串
 
rmdir           刪除空目錄
 
tree             樹形結構顯示目錄,須要安裝tree包
 
pwd              顯示當前目錄
 
ln                  建立連接文件
 
more、less  分頁顯示文本文件內容
 
head、tail    顯示文件頭、尾內容
 
ctrl+alt+F1  命令行全屏模式

  

系統管理命令

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
32
33
stat              顯示指定文件的詳細信息,比ls更詳細
 
who               顯示在線登錄用戶
 
whoami          顯示當前操做用戶
 
hostname      顯示主機名
 
uname           顯示系統信息
 
top                動態顯示當前耗費資源最多進程信息
 
ps                  顯示瞬間進程狀態 ps -aux
 
du                  查看目錄大小 du -h /home帶有單位顯示目錄信息
 
df                  查看磁盤大小 df -h 帶有單位顯示磁盤信息
 
ifconfig          查看網絡狀況
 
ping                測試網絡連通
 
netstat          顯示網絡狀態信息
 
man                命令不會用了,找男人  如:man ls
 
clear              清屏
 
alias               對命令重命名 如:alias showmeit= "ps -aux"  ,另外解除使用unaliax showmeit
 
kill                 殺死進程,能夠先用ps 或 top命令查看進程的id,而後再用kill命令殺死進程。

  

打包壓縮相關命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
gzip:
 
bzip2:
 
tar:                打包壓縮
 
      -c              歸檔文件
 
      -x              壓縮文件
 
      -z              gzip壓縮文件
 
      -j              bzip2壓縮文件
 
      -v              顯示壓縮或解壓縮過程 v(view)
 
      -f              使用檔名

  

例:

tar -cvf /home/abc.tar /home/abc              只打包,不壓縮

tar -zcvf /home/abc.tar.gz /home/abc        打包,並用gzip壓縮

tar -jcvf /home/abc.tar.bz2 /home/abc      打包,並用bzip2壓縮

固然,若是想解壓縮,就直接替換上面的命令  tar -cvf  / tar -zcvf  / tar -jcvf 中的「c」 換成「x」 就能夠了。

 

關機重啓機器

1
2
3
4
5
6
7
8
9
10
11
shutdown
 
      -r             關機重啓
 
      -h             關機不重啓
 
      now          馬上關機
 
halt               關機
 
reboot          重啓

  

 Linux管道

將一個命令的標準輸出做爲另外一個命令的標準輸入。也就是把幾個命令組合起來使用,後一個命令除之前一個命令的結果。

例:grep -r "close" /home/* | more       在home目錄下全部文件中查找,包括close的文件,並分頁輸出。

Linux軟件包管理 

 

dpkg (Debian Package)管理工具,軟件包名以.deb後綴。這種方法適合系統不能聯網的狀況下。

好比安裝tree命令的安裝包,先將tree.deb傳到Linux系統中。再使用以下命令安裝。

sudo dpkg -i tree_1.5.3-1_i386.deb         安裝軟件

sudo dpkg -r tree                                     卸載軟件

 

注:將tree.deb傳到Linux系統中,有多種方式。VMwareTool,使用掛載方式;使用winSCP工具等;

APT(Advanced Packaging Tool)高級軟件工具。這種方法適合系統可以鏈接互聯網的狀況。

依然以tree爲例

1
2
3
4
5
6
7
sudo apt- get  install tree                         安裝tree
 
sudo apt- get  remove tree                       卸載tree
 
sudo apt- get  update                                 更新軟件
 
sudo apt- get  upgrade       

  

 

將.rpm文件轉爲.deb文件

.rpm爲RedHat使用的軟件格式。在Ubuntu下不能直接使用,因此須要轉換一下。

sudo alien abc.rpm

 

vim使用

vim三種模式:命令模式、插入模式、編輯模式。使用ESC或i或:來切換模式。

命令模式下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
:q                      退出
 
:q!                     強制退出
 
:wq                   保存並退出
 
: set  number     顯示行號
 
: set  nonumber  隱藏行號
 
/apache            在文檔中查找apache 按n跳到下一個,shift+n上一個
 
yyp                   複製光標所在行,並粘貼
 
h(左移一個字符←)、j(下一行↓)、k(上一行↑)、l(右移一個字符→)

  

用戶及用戶組管理

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
32
33
/etc/passwd    存儲用戶帳號
 
/etc/ group        存儲組帳號
 
/etc/shadow    存儲用戶帳號的密碼
 
/etc/gshadow  存儲用戶組帳號的密碼
 
useradd 用戶名
 
userdel 用戶名
 
adduser 用戶名
 
groupadd 組名
 
groupdel 組名
 
passwd root     給root設置密碼
 
su root
 
su - root
 
/etc/profile     系統環境變量
 
bash_profile     用戶環境變量
 
.bashrc              用戶環境變量
 
su user              切換用戶,加載配置文件.bashrc
 
su - user            切換用戶,加載配置文件/etc/profile ,加載bash_profile

  

更改文件的用戶及用戶組

sudo chown [-R] owner[:group] {File|Directory}

例如:還以jdk-7u21-linux-i586.tar.gz爲例。屬於用戶hadoop,組hadoop

要想切換此文件所屬的用戶及組。可使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz

 

文件權限管理

三種基本權限

1
2
3
4
5
R           讀         數值表示爲4
 
W          寫         數值表示爲2
 
X           可執行  數值表示爲1

 

 

 

轉自:

https://www.cnblogs.com/wj-1314/articles/9485832.html

 

一,Linux使用nohup命令後臺運行程序

  在Linux服務器上搭建web服務器,用ssh客戶端登陸後使用 ./startservice.sh 腳本啓動服務,可是當ssh斷開鏈接後起的服務器也會停掉。這時就可使用下面命令運行服務,這樣在ssh斷開後服務也不會停。

1
nohup ./startservice.sh >>nohup. out  2 > &1 &

  上面代碼的用途:不掛斷地運行命令。

  語法:nohup Command  [Arg ... ] [&]

  描述:nohup命令運行由Command 參數和任何相關的 Arg 參數指定的命令,忽略全部掛斷(SIGHUP)信號。在註銷後使用 nohup命令運行後臺中的程序。要運行後臺中的 nohup命令,添加 & (表示「and」 的符號)到命令的尾部。

  因此上面命令中帶 & 的命令行,即便 terminal(終端)關閉,或者電腦死機程序依然運行(前提是將程序提交給服務器)。

  上面 2>&1 的意思就是把標準錯誤(2) 重定向到標準輸出(1),而標準輸出又導入文件 output裏面,因此結果是標準錯誤和標準輸出都導入文件output裏面了。至於爲何須要將標準錯誤重定向到標準輸出的緣由,那就歸結爲標準錯誤沒有緩衝區,而 stdout 有。這就會致使 >output 2>output 文件被output 被打開兩次,而 stdout 和 stderr 將會競爭覆蓋,這確定不是咱們相要的。

  操做系統中有三個經常使用的流:

  • 0:標準輸入流 stdin
  • 1:標準輸入流 stdout
  • 2:標準錯誤流 stderr

  通常當咱們用 > console.txt,實際是 1>console.txt的省略用法;< console.txt ,實際是 0 < console.txt的省略用法。

二,ctrl+c,ctrl+d,ctrl+z在linux程序中意義和區別

ctrl+c和ctrl+z都是中斷命令,可是他們的做用卻不同.

 

  ctrl+c是強制中斷程序的執行,,進程已經終止。

  ctrl+z的是將任務停止(暫停的意思),可是此任務並無結束,他仍然在進程中他只是維持掛起的狀態,用戶可使用fg/bg操做繼續前臺或後臺的任務,fg命令從新啓動前臺被中斷的任務,bg命令把被中斷的任務放在後臺執行.

  例如:當你vi一個文件是,若是須要用shell執行別的操做,可是你又不打算關閉vi,由於你得存盤推出,你能夠簡單的按下ctrl+z,shell會將vi進程掛起~,當你結束了那個shell操做以後,你能夠用fg命令繼續vi你的文件。

 

ctrl-d 不是發送信號,而是表示一個特殊的二進制值,表示 EOF。

注:在shell中,ctrl-d表示推出當前shell

 

三,Linux文件夾中的文件顏色

  今天看到Linux文件夾中的文件顏色,非常好奇,因此百度一下,知足了本身的好奇心。

綠色文件: 可執行文件,可執行的程序 
 
紅色文件:壓縮文件或者包文件
 
藍色文件:目錄
 
白色文件:通常性文件,如文本文件,配置文件,源碼文件等 
 
淺藍色文件:連接文件,主要是使用ln命令創建的文件
 
紅色閃爍:表示連接的文件有問題
 
黃色:表示設備文件
 
灰色:表示其餘文件
 
  在終端輸入ls-l就會出現花花綠綠的東西,以下:
 

  共顯示了七列信息,從左至右依次爲:權限、文件數、歸屬用戶、歸屬羣組、文件大小、建立日期、文件名稱。


四,Linux中ls和ll的區別

  ll 列出來的結果詳細,有時間,是否可讀寫等信息 ,象windows裏的 詳細信息
  ls 只列出文件名或目錄名 就象windows裏的  列表

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
ll不是命令,是ls -l的別名
 
ls 命令能夠說是linux下最經常使用的命令之一。
-a 列出目錄下的全部文件,包括以 . 開頭的隱含文件。
-b 把文件名中不可輸出的字符用反斜槓加字符編號(就象在C語言裏同樣)的形式列出。
-c 輸出文件的 i 節點的修改時間,並以此排序。
-d 將目錄象文件同樣顯示,而不是顯示其下的文件。
-e 輸出時間的所有信息,而不是輸出簡略信息。
-f -U 對輸出的文件不排序。
-g 無用。
-i 輸出文件的 i 節點的索引信息。
-k 以 k 字節的形式表示文件的大小。
-l 列出文件的詳細信息。
-m 橫向輸出文件名,並以「,」做分格符。
-n 用數字的 UID,GID 代替名稱。
-o 顯示文件的除組信息外的詳細信息。
-p -F 在每一個文件名後附上一個字符以說明該文件的類型,「*」表示可執行的普通

  

五,Linux裏sh命令是作什麼的?

1
2
3
4
5
6
7
8
     sh或是執行腳本,或是切換到sh這個bash裏,默認的shell是bash,你
能夠試試tcsh啊,csh啊,ksh,zsh什麼的,看看別的shell是什麼樣子的。
固然,linux中sh是連接到bash上的,因此sh與bash在功能上是沒有區別的。
 
     還有就是在執行腳本的時候是用sh + 腳本名的方式來執行,其實,大部
分的時候,簡單腳本只要權限設置正確,能夠直接執行,不須要sh命令的
 
---------------------

 

六,文件類型的詳細說明

6.1  文件類型

普通文件(regular file)

  就是通常存取的文件,由ls -al顯示出來的屬性中,第一個屬性爲 [-],例如 [-rwxrwxrwx]。另外,依照文件的內容,又大體能夠分爲:

  一、純文本文件(ASCII):這是Unix系統中最多的一種文件類型,之因此稱爲純文本文件,是由於內容能夠直接讀到的數據,例如數字、字母等等。設 置文件幾乎都屬於這種文件類型。舉例來講,使用命令「cat ~/.bashrc」就能夠看到該文件的內容(cat是將文件內容讀出來)。

  二、二進制文件(binary):系統其實僅認識且能夠執行二進制文件(binary file)。Linux中的可執行文件(腳本,文本方式的批處理文件不算)就是這種格式的。舉例來講,命令cat就是一個二進制文件。

  三、數據格式的文件(data):有些程序在運行過程當中,會讀取某些特定格式的文件,那些特定格式的文件能夠稱爲數據文件(data file)。舉例來講,Linux在用戶登入時,都會將登陸數據記錄在 /var/log/wtmp文件內,該文件是一個數據文件,它能經過last命令讀出來。但使用cat時,會讀出亂碼。由於它是屬於一種特殊格式的文件。

目錄文件(directory):

  就是目錄,第一個屬性爲 [d],例如 [drwxrwxrwx]。

    1,鏈接文件(link):相似Windows下面的快捷方式。第一個屬性爲 [l],例如 [lrwxrwxrwx]。

  2,設備與設備文件(device):與系統外設及存儲等相關的一些文件,一般都集中在 /dev目錄。一般又分爲兩種:

  3,塊設備文件:就是存儲數據以供系統存取的接口設備,簡單而言就是硬盤。例如一號硬盤的代碼是 /dev/hda1等文件。第一個屬性爲 [b]。

  4,字符設備文件:即串行端口的接口設備,例如鍵盤、鼠標等等。第一個屬性爲 [c]。

  5,套接字(sockets):這類文件一般用在網絡數據鏈接。能夠啓動一個程序來監聽客戶端的要求,客戶端就能夠經過套接字來進行數據通訊。第一個屬性爲 [s],最常在 /var/run目錄中看到這種文件類型。

  6,管道(FIFO,pipe):FIFO也是一種特殊的文件類型,它主要的目的是,解決多個程序同時存取一個文件所形成的錯誤。FIFO是first-in-first-out(先進先出)的縮寫。第一個屬性爲 [p]。

6.2 文件結構

  /:根目錄,全部的目錄、文件、設備都在/之下,/就是Linux文件系統的組織者,也是最上級的領導者。

  /bin:bin 就是二進制(binary)英文縮寫。在通常的系統當中,均可以在這個目錄下找到linux經常使用的命令。系統所須要的那些命令位於此目錄。

  /boot:Linux的內核及引導系統程序所須要的文件目錄,好比 vmlinuz initrd.img 文件都位於這個目錄中。在通常狀況下,GRUB或LILO系統引導管理器也位於這個目錄。

  /cdrom:這個目錄在剛剛安裝系統的時候是空的。能夠將光驅文件系統掛在這個目錄下。例如:mount /dev/cdrom /cdrom

  /dev:dev 是設備(device)的英文縮寫。這個目錄對全部的用戶都十分重要。由於在這個目錄中包含了全部linux系統中使用的外部設備。可是這裏並非放的外部設備的驅動程序。這一點和經常使用的windows,dos操做系統不同。它其實是一個訪問這些外部設備的端口。能夠很是方便地去訪問這些外部設備,和訪問一個文件,一個目錄沒有任何區別。

  /etc:etc這個目錄是linux系統中最重要的目錄之一。在這個目錄下存放了系統管理時要用到的各類配置文件和子目錄。要用到的網絡配置文件,文件系統,x系統配置文件,設備配置信息,設置用戶信息等都在這個目錄下。

  /home:若是創建一個用戶,用戶名是"xx",那麼在/home目錄下就有一個對應的/home/xx路徑,用來存放用戶的主目錄。

  /lib:lib是庫(library)英文縮寫。這個目錄是用來存放系統動態鏈接共享庫的。幾乎全部的應用程序都會用到這個目錄下的共享庫。所以,千萬不要輕易對這個目錄進行什麼操做,一旦發生問題,系統就不能工做了。

  /lost+found:在ext2或ext3文件系統中,當系統意外崩潰或機器意外關機,而產生一些文件碎片放在這裏。當系統啓動的過程當中fsck工具會檢查這裏,並修復已經損壞的文件系統。有時系統發生問題,有不少的文件被移到這個目錄中,可能會用手工的方式來修復,或移到文件到原來的位置上。

  /mnt:這個目錄通常是用於存放掛載儲存設備的掛載目錄的,好比有cdrom等目錄。能夠參看/etc/fstab的定義。

  /media:有些linux的發行版使用這個目錄來掛載那些usb接口的移動硬盤(包括U盤)、CD/DVD驅動器等等。

  /opt:這裏主要存放那些可選的程序。

  /proc:能夠在這個目錄下獲取系統信息。這些信息是在內存中,由系統本身產生的。

  /root:Linux超級權限用戶root的家目錄。

  /sbin:這個目錄是用來存放系統管理員的系統管理程序。大可能是涉及系統管理的命令的存放,是超級權限用戶root的可執行命令存放地,普通用戶無權限執行這個目錄下的命令,這個目錄和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目錄是類似的,凡是目錄sbin中包含的都是root權限才能執行的。

  /selinux :對SElinux的一些配置文件目錄,SElinux可讓linux更加安全。

  /srv 服務啓動後,所需訪問的數據目錄,舉個例子來講,www服務啓動讀取的網頁數據就能夠放在/srv/www中

  /tmp:臨時文件目錄,用來存放不一樣程序執行時產生的臨時文件。有時用戶運行程序的時候,會產生臨時文件。/tmp就用來存放臨時文件的。/var/tmp目錄和這個目錄類似。

  /usr這是linux系統中佔用硬盤空間最大的目錄。用戶的不少應用程序和文件都存放在這個目錄下。在這個目錄下,能夠找到那些不適合放在/bin或/etc目錄下的額外的工具

  /usr/local:這裏主要存放那些手動安裝的軟件,即不是經過「新立得」或apt-get安裝的軟件。它和/usr目錄具備相相似的目錄結構。讓軟件包管理器來管理/usr目錄,而把自定義的腳本(scripts)放到/usr/local目錄下面、。

  /usr/share :系統共用的東西存放地,好比 /usr/share/fonts 是字體目錄,/usr/share/doc和/usr/share/man幫助文件。

  /var:這個目錄的內容是常常變更的,看名字就知道,能夠理解爲vary的縮寫,

  /var下有/var/log 這是用來存放系統日誌的目錄。

  /var/ www目錄是定義Apache服務器站點存放目錄;

  /var/lib 用來存放一些庫文件,好比MySQL的,以及MySQL數據庫的的存放地。

七, Linux下的chmod +x是什麼意思,爲何要使用這個?

  一個start.sh文件,原本是灰色的(普通的文件),若是執行chmod +x 給了權限,文件顏色就變成綠色。

  若是使用chmod -x 則就會變成灰色(普通的文本顏色),普通的文本顏色是不能執行的,執行會報錯。

7.1  chmod +x 和 chmod u+x的區別

  設置誰擁有執行這個文件權限。chmod +x 和chmod a+x 是同樣的,通常沒有明確要求,就可使用chmod +x。

相關文章
相關標籤/搜索