Linux經常使用20個命令

 先來看看我在百人計劃學習期間經常使用到的20個命令

經常使用命令.png

可能剛接觸的時候看到命令並不理解它的含義,但當我知道英文全稱時就明白了。php

1、cd:切換目錄(Change directory)

(1)cd ~cd:返回用戶目錄css

[root@izwz94jtz9hbdq165vpxpxz app1]# cd ~
[root@izwz94jtz9hbdq165vpxpxz ~]# 

[root@izwz94jtz9hbdq165vpxpxz app1]# cd
[root@izwz94jtz9hbdq165vpxpxz ~]# 

(2)cd .:停留在當前目錄redis

[root@izwz94jtz9hbdq165vpxpxz app1]# cd .
[root@izwz94jtz9hbdq165vpxpxz app1]# 

(3)cd ..:返回上一級目錄ruby

[root@izwz94jtz9hbdq165vpxpxz app1]# cd a
 [root@izwz94jtz9hbdq165vpxpxz a]# cd ..
 [root@izwz94jtz9hbdq165vpxpxz app1]#

(4)cd ../..:返回上兩級目錄bash

[root@izwz94jtz9hbdq165vpxpxz app1]# cd www
  [root@izwz94jtz9hbdq165vpxpxz www]# cd carina
  [root@izwz94jtz9hbdq165vpxpxz carina]# cd ../..
  [root@izwz94jtz9hbdq165vpxpxz app1]#

(5)cd ../目錄A:先返回進入此目錄以前所在的目錄,而後再進入指定的目錄A服務器

[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app1/www
 [root@izwz94jtz9hbdq165vpxpxz www]# ls
 123.jgp  123.txt  a2  carina  requests-2.18.1.tar.gz  root
 [root@izwz94jtz9hbdq165vpxpxz www]# cd carina
 [root@izwz94jtz9hbdq165vpxpxz carina]#cd ../a2
 [root@izwz94jtz9hbdq165vpxpxz a2]#

(6)cd -:返回進入此目錄以前所在的目錄app

[root@izwz94jtz9hbdq165vpxpxz app1]# cd www
 [root@izwz94jtz9hbdq165vpxpxz www]# cd -
 /app1

(7)cd 路徑:進入指定目錄學習

[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app1/www
 [root@izwz94jtz9hbdq165vpxpxz www]#

(8)cd /:返回到根目錄ui

[root@izwz94jtz9hbdq165vpxpxz ~]# cd /
 [root@izwz94jtz9hbdq165vpxpxz /]#

 [root@izwz94jtz9hbdq165vpxpxz carina]# cd /
 [root@izwz94jtz9hbdq165vpxpxz /]

 

2、ls:列出目錄下的文件(List files)

ls:列出指定路徑下的全部文件名、時間及讀寫權限(文件詳細信息)spa

(1)ls -a:顯示全部文件列表(含隱藏文件「.」和「..」)

[root@izwz94jtz9hbdq165vpxpxz www]# ls -a
 .  ..  carina  carina.tar.gz  redis-3.0.7.tar.gz  root  text1.txt  text.tx

(2)ls -A:顯示除隱藏文件「.」和「..」之外的全部文件列表

[root@izwz94jtz9hbdq165vpxpxz www]# ls -A
 carina  carina.tar.gz  redis-3.0.7.tar.gz  root  text1.txt  text.txt

(3)ls -l:以列表形式顯示文件及文件夾的詳細信息
(從左至右:文件類型、權限、數量、屬主、屬組、大小、修改/訪問時間、文件名)

[root@izwz94jtz9hbdq165vpxpxz www]# ls -l
 total 1368
 drwxr-xr-x 5 root root    4096 Jun 22 13:23 carina
 -rw-r--r-- 1 root root     256 Jun 19 00:27 carina.tar.gz
 -rw-r--r-- 1 root root 1375200 Jul 10 09:35 redis-3.0.7.tar.gz
 drwxr-xr-x 3 root root    4096 Jun 19 00:40 root
 -rw-r--r-- 1 root root       6 Jul  6 18:14 text1.txt
 -rw-r--r-- 1 root root       6 Jul  6 18:13 text.txt

ll:ls -l的簡寫

[root@izwz94jtz9hbdq165vpxpxz app1]# ll
 total 36
 drwxr-xr-x 2 root root 4096 Jul 14 16:55 a
 drwxr-xr-x 2 root root 4096 Jul 16 13:43 aa
 drwxr-xr-x 2 root root 4096 Jul 16 13:47 b
 drwxrwxrwx 4 root root 4096 Jul 10 13:29 bak
 drwxr-xr-x 2 root root 4096 Jul 16 13:47 c
 drwxr-xr-x 2 root root 4096 Jul 16 13:47 d
 drwxr-xr-x 4 root root 4096 Jul  4 22:56 test
 drwxr-xr-x 4 root root 4096 Jul 10 09:35 www
 drwxr-xr-x 2 root root 4096 Jul 10 13:02 zyp

 

3、mv:移動/重命名 文件或目錄 (Move file)

(語法:mv 源文件 目標文件)

(1)目標文件不是目錄,即重命名 ,以下是將app1文件夾內的a文件夾重命名爲a1
mv 原文件名 新文件名

[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app1
[root@izwz94jtz9hbdq165vpxpxz app1]# ls
a  aa  b  bak  c  d  test  www  zyp
[root@izwz94jtz9hbdq165vpxpxz app1]# mv a a1
[root@izwz94jtz9hbdq165vpxpxz app1]# ls
a1  aa  b  bak  c  d  test  www  zyp

(2)目標文件是目錄

  • 單文件移動(mv 移動前文件 移動後文件路徑
[root@izwz94jtz9hbdq165vpxpxz ~]# mv /app1/www/text1.txt /app2/app21
[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app2/app21
[root@izwz94jtz9hbdq165vpxpxz app21]# ls
text1.txt
  • 多文件移動,使用 -t(含文件及文件夾)
[root@izwz94jtz9hbdq165vpxpxz www]# mv carina/ carina.tar.gz text1.txt text.txt -t /app2/app21
[root@izwz94jtz9hbdq165vpxpxz www]# cd /app2/app21
[root@izwz94jtz9hbdq165vpxpxz app21]# ls
carina  carina.tar.gz  text1.txt  text.txt

**將文件text.tx、text1.txt、redis-3.0.7.tar.gz、a3文件夾移動到app2文件夾下的app21文件夾**
(文件夾後的/省去效果同樣)
[root@izwz94jtz9hbdq165vpxpxz www]# mv -t /app2/app21 text.txt text1.txt redis-3.0.7.tar.gz a3/

(3)將上級目錄的文件 拷貝到當前目錄 (mv ../文件名 ./)

提示:./ 和../ 都是相對地址,./ 是當前目錄,../是上一級目錄

[root@izwz94jtz9hbdq165vpxpxz app1]# ls
 file2.txt  file3.txt  file4.txt  file.txt
 [root@izwz94jtz9hbdq165vpxpxz app1]# cd www
 [root@izwz94jtz9hbdq165vpxpxz www]# ls
 test  text1.txt  text3.txt  text.txt
 [root@izwz94jtz9hbdq165vpxpxz www]# mv ../file.txt ./
 [root@izwz94jtz9hbdq165vpxpxz www]# ls
 file.txt  test  text1.txt  text3.txt  text.txt
 [root@izwz94jtz9hbdq165vpxpxz www]# cd ..
 [root@izwz94jtz9hbdq165vpxpxz app1]# ls
 file2.txt  file3.txt  file4.txt

 

4、mkdir:建立目錄(Make directory )

(需注意相對路徑和絕對路徑)

(1)在目錄名前沒有加任何路徑名,則在當前目錄下建立

[root@izwz94jtz9hbdq165vpxpxz ~]# mkdir a

(2)在目錄名前有一個已經存在的路徑,將會在該目錄下建立

[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app1
[root@izwz94jtz9hbdq165vpxpxz app1]# mkdir aa

(3)建立多級目錄及多文件夾,使用 -p(文件夾之間用空格隔開)
(若上層目錄沒找到,則會一併建立)

絕對路徑:
[root@izwz94jtz9hbdq165vpxpxz app2]# mkdir -p /app2/a1 b1 c1 d1
[root@izwz94jtz9hbdq165vpxpxz app2]# ls
a1  b1  c1  d1

相對路徑:
[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app1/www
[root@izwz94jtz9hbdq165vpxpxz www]# mkdir -p carina/a1 carina/a2 carina/a3
[root@izwz94jtz9hbdq165vpxpxz www]# cd carina
[root@izwz94jtz9hbdq165vpxpxz carina]# ls
a1 a2 a3

若不使用 -p,文件夾建立會失敗

[root@izwz94jtz9hbdq165vpxpxz ~]# mkdir test/test1 test2 test3
mkdir: cannot create directory ‘test/test1’: No such file or directory

(4)建立多目錄下的單個文件,也可使用 --parents

[root@izwz94jtz9hbdq165vpxpxz ~]# mkdir --parents /a2/a
[root@izwz94jtz9hbdq165vpxpxz ~]# cd /a2
[root@izwz94jtz9hbdq165vpxpxz a2]# ls
a

(5)建立帶權限的文件夾,使用 -m

  • 目錄已存在,建立成功
[root@izwz94jtz9hbdq165vpxpxz ~]# mkdir -m 700 /a2/a/aa
(文件屬主擁有讀、寫和執行權限,其餘人無權訪問)
  • 目錄不存在,建立失敗
[root@izwz94jtz9hbdq165vpxpxz ~]# cd /a2
[root@izwz94jtz9hbdq165vpxpxz a2]# mkdir -m 700 /a3/a/aa
mkdir: cannot create directory ‘/a3/a/aa’: No such file or directory

此時須要使用 -p-m

[root@izwz94jtz9hbdq165vpxpxz ~]# mkdir -p -m 700 /a3/a/aa

注意事項:
在建立目錄時,應保證新建的目錄與它所在目錄下的文件沒有重名

[root@izwz94jtz9hbdq165vpxpxz app1]# mkdir a
mkdir: cannot create directory ‘a’: File exists    (已有文件夾存在)

 

5、cat:顯示文件的內容 (Concatenate)

(1)輸出多個文件內容

[root@izwz94jtz9hbdq165vpxpxz www]# cat text1.txt text.txt
hello world        /*text1.txt內容*/
dgdfgfhfdgh      /*text.txt內容*/

(2)將2個文件合併新文件

[root@izwz94jtz9hbdq165vpxpxz www]# cat text1.txt text.txt > text2.txt
 [root@izwz94jtz9hbdq165vpxpxz www]# ls
 text1.txt  text2.txt  text.txt
 [root@izwz94jtz9hbdq165vpxpxz www]# cat text2.txt
 hello world
 dgdfgfhfdgh

注:若新文件有內容,則原數據會被清空,所以須要當心操做

[root@izwz94jtz9hbdq165vpxpxz www]# cat text2.txt
 testtesttedgdkljsdhfkld
 [root@izwz94jtz9hbdq165vpxpxz www]# cat text1.txt text3.txt > text2.txt
 [root@izwz94jtz9hbdq165vpxpxz www]# cat text2.txt
 hello world
 hihihihihihi

(3)將file1.txt追加到file2.txt的末尾(>> 表示將文本流追加到另外一個文件的末位)
cat file1.txt >> file2.txt

[root@izwz94jtz9hbdq165vpxpxz www]# cat text2.txt
 gdgdg
 [root@izwz94jtz9hbdq165vpxpxz www]# cat text1.txt >> text2.txt
 [root@izwz94jtz9hbdq165vpxpxz www]# cat text2.txt
 gdgdg
 hello world

(4)文件夾不能合併

[root@izwz94jtz9hbdq165vpxpxz app1]# ls
a1  a2
[root@izwz94jtz9hbdq165vpxpxz app1]# cat a1 a2 a3
cat: a1: Is a directory
cat: a2: Is a directory
cat: a3: No such file or directory

 

6、find:在指定目錄下查找文件

find 目錄 參數
(1)單文件匹配

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/www -name "*.txt"
/app1/www/root/carina/a/test.txt
/app1/www/text3.txt
/app1/www/text1.txt
/app1/www/text.txt

(2)多文件匹配(目錄下以.txt結尾的文件、含字母a的文件) : 使用 -o

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/www -name "*.txt" -o -name "*a*" 
/app1/www/a2
/app1/www/root/carina
/app1/www/root/carina/a
/app1/www/root/carina/a/test.txt
/app1/www/text3.txt
/app1/www/text1.txt
/app1/www/text.txt
/app1/www/carina
/app1/www/carina/aa
/app1/www/carina/carina
/app1/www/carina/carina/a2
/app1/www/carina/carina/a1
/app1/www/carina/carina/a3

(3)查找除XX外的: **使用 "!" or "-not" **

如查找app1文件夾下www文件夾,文件名不含a

find /app1/www ! -name "*a*"

查找當前目錄下 文件不含a的信息

[root@izwz94jtz9hbdq165vpxpxz ~]#find /app1/www -maxdepth 1 -not -name "*a*"

(4)查找文件,忽略大小寫 :使用 -i

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1 -iname "*test*"
 /app1/www/a2/test
 /app1/www/test
 /app1/TEST       /*大寫文件夾*/

(5)只查找某層目錄下含XX的文件(夾):使用 mindepth 和 maxdepth

「-maxdepth 1」 :限制只查找1層目錄深度,當前目錄即爲1層

查找當前目錄下,含test的文件及文件夾

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1 -maxdepth 1 -name "*test*"
/app1/test1.txt
/app1/zyptest
/app1/test

以下 「 /app1/www/ 」 即爲1層目錄深度

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/www -maxdepth 1 -name "*test*"
/app1/www/test

查找當前目錄 及其 1層深的子目錄中,含test的文件及文件夾,即 maxdepth 2

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1 -maxdepth 2 -name "*test*"
/app1/www/test    
/app1/test1.txt
/app1/zyptest
/app1/test

在第1層子目錄和第2層子目錄之間查找文件(第一層子目錄就是2層目錄

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1 -mindepth 2 -maxdepth 3 -name "*test*"
 /app1/www/a2/test
 /app1/www/test

(6)查找空文件(-empty

只列出當前目錄下的非隱藏空文件

[root@izwz94jtz9hbdq165vpxpxz ~]#find . -maxdepth 1 -empty -not -name ".*"

(7)查找指定文件類型的文件 (-type

查找指定目錄下的全部目錄 -type d

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/www -type d
 /app1/www
 /app1/www/a2
 /app1/www/a2/test
 /app1/www/root
 /app1/www/root/carina
 /app1/www/root/carina/b
 /app1/www/root/carina/a
 /app1/www/carina
 /app1/www/carina/aa

查找指定目錄下的全部文件 -type f

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/www -type f
 /app1/www/root/carina/config.xml
 /app1/www/requests-2.18.1.tar.gz
 /app1/www/text.txt
 /app1/www/123.jgp

 

7、pwd:以絕對路徑的方式顯示用戶當前工做目錄

Print working directory

[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app1/www
[root@izwz94jtz9hbdq165vpxpxz www]# pwd
/app1/www

 

8、rm -參數:刪除N個文件或整個目錄

使用rm命令要格外當心。由於一旦刪除了一個文件,就沒法再恢復。
建議用-i選項,刪除時會有提示

相對路徑:
[root@izwz94jtz9hbdq165vpxpxz www]# rm -i text2.txt
rm: remove regular file ‘text2.txt’?      /*回車鍵不刪除,效果同輸入n*/
[root@izwz94jtz9hbdq165vpxpxz www]# ls
text2.txt  text3.txt  text.txt
[root@izwz94jtz9hbdq165vpxpxz www]# rm -i text2.txt
rm: remove regular file ‘text2.txt’? y      /*文件刪除成功*/
[root@izwz94jtz9hbdq165vpxpxz www]# ls
text3.txt  text.txt

絕對路徑:
[root@izwz94jtz9hbdq165vpxpxz www]# rm /app1/c/text1.txt
rm: remove regular file ‘/app1/c/text1.txt’? y
[root@izwz94jtz9hbdq165vpxpxz www]#

注:rm不能刪除文件夾

[root@izwz94jtz9hbdq165vpxpxz /]# rm app3
 rm: cannot remove ‘app3’: Is a directory

rm -r(或rm -R):刪除當前目錄下除隱含文件外的全部文件和子目錄

應注意,這樣作是很是危險的!
[root@izwz94jtz9hbdq165vpxpxz app21]# ls -a
.  ..  a3  redis-3.0.7.tar.gz  text1.txt
[root@izwz94jtz9hbdq165vpxpxz app21]# cd ..
[root@izwz94jtz9hbdq165vpxpxz app2]# rm -r app21
rm: descend into directory ‘app21’? y                    /*輸入y刪除*/
rm: remove regular empty file ‘app21/text1.txt’? y
rm: descend into directory ‘app21/a3’? y
rm: remove regular empty file ‘app21/a3/a3.png’? y
rm: remove regular empty file ‘app21/a3/a3.txt’? y
rm: remove directory ‘app21/a3’? y
rm: remove regular empty file ‘app21/redis-3.0.7.tar.gz’? y
rm: remove directory ‘app21’? y
[root@izwz94jtz9hbdq165vpxpxz app2]# ls -a
.  ..

rm -(r)f:強制刪除,f 可理解爲force

[root@izwz94jtz9hbdq165vpxpxz ~]# cd /app1/aa
[root@izwz94jtz9hbdq165vpxpxz aa]# ls
aa1
[root@izwz94jtz9hbdq165vpxpxz aa]# cd ..
[root@izwz94jtz9hbdq165vpxpxz app1]# rm -rf aa
[root@izwz94jtz9hbdq165vpxpxz app1]# 

刪除某個目錄下全部帶有test的文件夾及文件

  • 結合find命令刪除:
find 目錄  -name "*file*" -exec rm -rf {} \;

語法解析

-exec 找到後執行命令
 rm -rf {}  就是刪除文件
 \; 命令 屬於格式要求的,沒有具體含義

舉例

[root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/ -name "*test*"
 /app1/www/test1.txt
 /app1/www/test
 /app1/test.txt
 /app1/zyptest
 /app1/test
 [root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/ -name "*test*" -exec rm -rf {} \;
 find: ‘/app1/www/test’: No such file or directory        /*文件已被刪除因此會提示找不到*/
 find: ‘/app1/zyptest’: No such file or directory
 find: ‘/app1/test’: No such file or directory
 [root@izwz94jtz9hbdq165vpxpxz ~]# find /app1/ -name "*test*"
 [root@izwz94jtz9hbdq165vpxpxz ~]#

 

9、touch:建立新的空文件

(用ls-l查看文件大小爲0)

[root@izwz94jtz9hbdq165vpxpxz www]# touch text.txt
[root@izwz94jtz9hbdq165vpxpxz www]# ls -l
total 0
-rw-r--r-- 1 root root    0 Jul 16 17:02 text.txt

批量建立文件

[root@izwz94jtz9hbdq165vpxpxz a1]# touch a{1..10}.text
 [root@izwz94jtz9hbdq165vpxpxz a1]# ls
 a10.text  a1.text  a2.text  a3.text  a4.text  a5.text  a6.text  a7.text  a8.text  a9.text

 

10、cp:複製文件/目錄(Copy file)

(1)默認狀況下,cp命令不能複製目錄

[root@izwz94jtz9hbdq165vpxpxz app1]# cp a1 /app2
cp: omitting directory ‘a1’

若是要複製目錄,則必須使用-R選項

  • 目標目錄存在,直接複製
[root@izwz94jtz9hbdq165vpxpxz app1]# cp -R a1 /app2
 [root@izwz94jtz9hbdq165vpxpxz app1]# find / -name "a1"
 /app1/a1
 /app2/a1
  • 目標目錄不存在,先自動建立目標目錄再複製源目錄

    [root@izwz94jtz9hbdq165vpxpxz app1]# ls
    test  www  zyp
    [root@izwz94jtz9hbdq165vpxpxz app1]# cd www
    [root@izwz94jtz9hbdq165vpxpxz www]# ls
    123.jgp  a2  carina  root  text1.txt  text3.txt  text.txt
    [root@izwz94jtz9hbdq165vpxpxz www]# cp -R carina /app1/zyptest /*拷貝到不存在的目錄*/
    [root@izwz94jtz9hbdq165vpxpxz www]# cd ..
    [root@izwz94jtz9hbdq165vpxpxz app1]# ls
    test  www  zyp  zyptest       /*目錄建立成功*/

(2)複製文件

[root@izwz94jtz9hbdq165vpxpxz www]# cp text1.txt /app1/c
 [root@izwz94jtz9hbdq165vpxpxz www]# find / -name "text1.txt"
 /app1/www/text1.txt
 /app1/c/text1.txt

 絕對路徑:
 [root@izwz94jtz9hbdq165vpxpxz ~]# cp /app1/www/text1.txt /app1/c

(3)複製文件並重命名文件
以下將www文件夾下的text1.txt 複製到目錄 /app1,並更名爲text.txt

[root@izwz94jtz9hbdq165vpxpxz www]# cp text1.txt /app1/text.txt

(4)複製特定類型的文件

[root@izwz94jtz9hbdq165vpxpxz www]# ls
 123.txt  carina text1.txt  text3.txt  text.txt
 [root@izwz94jtz9hbdq165vpxpxz www]# cp t*.txt /app1/bak
 [root@izwz94jtz9hbdq165vpxpxz www]# cd /app1/bak
 [root@izwz94jtz9hbdq165vpxpxz bak]# ls
 text1.txt  text3.txt  text.txt

複製前可能已經有文件存在了,那麼不想進行每一個選項都輸入 y 確認的話,須要在 cp 前加 \,沒有空格

[root@izwz94jtz9hbdq165vpxpxz www]# cp t*.txt /app1/bak
cp: overwrite ‘/app1/bak/text1.txt’? y
cp: overwrite ‘/app1/bak/text3.txt’? y
cp: overwrite ‘/app1/bak/text.txt’? y

[root@izwz94jtz9hbdq165vpxpxz www]# \cp t*.txt /app1/bak /*沒有提示按y*/
[root@izwz94jtz9hbdq165vpxpxz www]# 

 

11、vi:修改文件內容

先按鍵盤字母I,編輯內容後,保存(按esc鍵後輸入:wq)

[root@izwz94jtz9hbdq165vpxpxz www]# vi text.txt
dgdfgfhfdgh

 

12、echo:建立/覆蓋文件

(1)使用>指令
若文件不存在則建立文件

[root@izwz94jtz9hbdq165vpxpxz a1]# echo 'hello world' > hw.text
[root@izwz94jtz9hbdq165vpxpxz a1]# ls
hw.text
[root@izwz94jtz9hbdq165vpxpxz a1]# cat hw.text
hello world

(2)若文件存在,覆蓋文件原內容並從新輸入內容

[root@izwz94jtz9hbdq165vpxpxz a1]# cat hh.text
hello hello
[root@izwz94jtz9hbdq165vpxpxz a1]# echo 'hi hi' > hh.text
[root@izwz94jtz9hbdq165vpxpxz a1]# cat hh.text
hi hi

(2)使用 >>,向文件追加內容,原內容不變

[root@izwz94jtz9hbdq165vpxpxz a1]# cat hw.text
hello world
[root@izwz94jtz9hbdq165vpxpxz a1]# echo 'yeah yeah' >> hw.text
[root@izwz94jtz9hbdq165vpxpxz a1]# cat hw.text
hello world
yeah yeah

 

十3、tar:文件打包、解壓(Tape archive)

(1)文件打包:tar -zcvf 打包名 文件

[root@izwz94jtz9hbdq165vpxpxz www]# ls
123.txt  a2  carina  requests-2.18.1.tar.gz  text1.txt  text3.txt  text.txt
[root@izwz94jtz9hbdq165vpxpxz www]# tar -zcvf text.tar.gz 123.txt a2 text1.txt
123.txt
a2/
text1.txt
[root@izwz94jtz9hbdq165vpxpxz www]# ls
123.txt  a2  carina  requests-2.18.1.tar.gz  text1.txt  text3.txt  text.tar.gz  text.txt

(2)文件解壓:tar -zxvf 文件名

[root@izwz94jtz9hbdq165vpxpxz app1]# tar -zxvf text.tar.gz

 

十4、scp:遠程拷貝文件(secure copy)

(1)將本地的文件上傳到遠程服務器上
相對路徑下,scp 文件名 用戶名@ip:服務器絕對路徑目錄 (分號後面無空格)

scp redis-3.0.7.tar.gz root@29.118.65.136:/app1/www

絕對路徑:

scp /app/software/www/text.txt root@29.118.65.136:/app1/bak

如果上傳目錄,須要使用 -r

scp -r /app/software/www root@29.118.65.136:/app1/bak

(2)將遠程服務器上的文件/目錄拷貝到本地
scp -r 用戶名@ip:服務器絕對路徑目錄 絕對路徑本地目錄

scp -r root@29.118.65.136:/app1/www /app/software
scp root@29.118.65.136:/app1/www/text.txt /app/software/www

注意點:

  • 使用scp須要注意所使用的用戶是否具備可讀取遠程服務器相應文件的權限
  • 若是遠程服務器防火牆有特殊限制,scp便要走特殊端口,具體用什麼端口視狀況而定,命令格式以下:
    scp -p 端口號 remote@www.abc.com:/usr/local/sin.sh /home/administrator
相關文章
相關標籤/搜索