1. 請寫出建立磁碟配額的步驟和命令請寫出tar命令的幾個用法:對文件目錄進行歸檔、對文件和目錄進行壓縮
1)、1步,修改/etc/fstab文件
2步,重新掛載文件系統。
3步,創建配額文件,可以用quotacheck –cmug \ 命令實現
4步,配置配額,用equota 命令實現,在編輯環境中修改。
2)、對文件目錄進行歸檔
tar cf files.tar files
對文件和目錄進行壓縮備份
tar czf files.tar.gz files
列出tar歸檔文件中的目錄列表
tar tf files.tar
查看壓縮歸檔文件中的目錄列表
tar tzf files.tar.tz
恢復tar備份文件
tar xf files.tar
恢復壓縮tar備份文件
tar xzf files.tar.gz
還有不會的請參考《linux就該這么學》,針對各種linux疑難雜症,幫助linux學習者。
2. 文件歸檔怎麼做
文件歸檔都是通過創建那個文件的軟體來實現歸檔。你需要打開創建那個文件的軟體,然後執行歸檔命令。
3. Linux數據歸檔、壓縮、解壓與提取指定文件
高通量數據分析過程中涉及的中間文件,在存儲量允許的前提下,可以將其暫存備查。通常可以將這些文件歸檔或壓縮後保存,並打上日期標簽,長時間未使用的非重要數據可考慮刪除以騰出存儲空間。在此總結Linux系統常用的歸檔與壓縮指令。
歸檔 即將多個文件(目錄)打包為一個文件,但並不對文件進行壓縮。
從歸檔文件中提取指定文件
從壓縮文件中提取指定文件
參考:
1. Linux tar 命令
2. 如何從一個tar包中或者tar.gz包中提取某個文件
4. Linux實用命令有哪些
1選擇
1.1一個文件的名字為rr.Z,可以用來解壓縮的命令時()
tar
gzip
compress
uncompress
1.2可以結束進程命令()
kill
ctrl+c
shutdown
halt
1.3 Linux下對文件進行歸檔的命令為:(多選)
dd
tar
zip
unzip
1.4 Linux查當前目錄下30天以前的文件並移動到/dev/null下的命令:(多選)
find.-mtime 30-type f xargs mv{}/dev/null;
find.-mtime+30-type xargs mv{}/dev/null;
find.-mtime+30-type f-exec mv{}/dev/null;
find.-mtime+30-type f-exec rm–rf{};
1.5 dstat與下面哪個命令類似
vmstat
sar
iotop
abc
1.6 rpm安裝軟體的參數
rpm-ivh
rpm-Ivh
rpm-Uvh
rpm-Iuvh
1.7 yum升級軟體包選項
rpm-uvh
rpm-Uvh
1.8查看網路流量命令是?
iftop
nsload
ifstatd
以上命令全可以
1.9停止進程的命令,除了kill還有誰?
pkill
killa
allkill
以上命令都不正確
1.10伺服器之間傳文件的命令有?
wget
scp
ftp
以上命令都可以
1.11對文件進行歸檔的命令為
dd
cpio
gzip
tar
1.12在rpm命令中,安裝新的rpm包軟體使用的參數是()
-i
-v
-h
-e
1.13命令中,使用友好的方式顯示信息的參數是()
-h
-f
-a
-t
1.14將/home/stud1/wang目錄做歸檔壓縮,壓縮後生成wang.tar.gz文件,並將此文件保存到/home目錄下,實現如此任務的tar命令格式___
tar zxvf/home/stud1/wang.tar.gz/home/wang
tar xcvf/home/stud1/wang/home/wang
tar zcv/home/stud1/wang/home/wang
tar zcvf/home/stud1/wang/home/wang.tar.gz
1.15終止一個前台進程可能用到的命令和操作()A:kill
B:CTRL+C
C:shutdown
D:halt
1.16關閉Linux系統(不重新啟動)可使用命令()
A:Ctrl+Alt+Del
B:halt
C:shutdown-r now
D:reboot
1.17下列提法中,不屬於ifconfig命令作用范圍的是__
A:配置本地環回地址
B:配置網卡的IP地址
C:激活網路適配器
D:載入網卡到內核中
1.18有關歸檔和壓縮命令,下面描述正確的是()
A:用uncompress命令解壓縮由compress命令生成地後綴為.zip的壓縮文件
B:upzip命令和gzip命令可以解壓相同類型文件
C:tar歸檔其壓縮的文件可以有gzip命令解壓縮
D:tar命令歸檔後的文件也是一種壓縮文件
1.19終止一共前台進程可能用到的命令和操作
kill
ctrl+c
shut down
halt
1.22為了將當前目錄下的歸檔文檔myftp,tar解壓縮到/tmp目錄下,用戶可以使用命令
tar xvzf myftp.tgz-C/tmp
tar xvzf myftp.tgz-R/tmp
tar vzf myftp.tgz-X/tmp
tar xvzf myftp.tgz/tmp
1.23下面有關linux查看系統負載的命令,說法錯誤的是?
uptime命令主要用於獲取主機運行時間和查詢linux系統負載等信息
vmstat命令可以查看cpu負載
sar命令可以查看網路介面信息
free命令可以查看磁碟負載情況
1.24以下哪些方式/命令不可以查看某ip是否可達?
telnet
ping
tracert
top
1.25 tar命令用於解壓的參數是?-v-x-c-f
1.26下面哪個命令不是用來查看網路故障?
telnet
ping
init
netstat
1.28為了知道誰在正注冊到你的機器上,可以用命令:___
Who users finger ping
1.29查看本網段其他計算機的MAC地址,可先ping對方主機,然後;
arp-g
arp-n
arp-a
arp-d
1.3014日下午2點date+%y%m%d%H%M輸出的時間是什麼
201711141212
1711141212
2017111412
201711021212
1.31以下哪個命令可以得出1487進程的線程運行情況()
top-Hp 1487
top-Pp 1487
ps-mp 1487
sat-p 1487
1.32從/home/oracle下搜索一個日誌文件alert.log,以下哪種方式可達到目的()
find/home./oracle-name alert.log
locate alert.log
find./-mtime 7 alert.log
find/home/oracle-exec alert.log
1.34以下哪些命令可以用來測試網路中特定主機的80埠是否可以訪問()
Ping telnet netstat lsof
2填空
2.1測試網路中主機的連通性用什麼命令
2.2如何查看numa是否關閉_**_
2.3將/home/stud1/wang目錄做歸檔壓縮,壓縮後生成wang.tar.gz文件,並將此文件保存到/home目錄下,實現如此任務的tar命令格式_**
2.4某個進程使用埠7001,如何快速找到該進程的PID
2.5結束後台進程的命令是**_**
2.6將/home/studl/wang目錄做歸檔壓縮,壓縮後生成wang.tar.gz文件,並將此存到/home目錄下,實現此任務的tar命令格式******__******
2.7 ping100個包的命令——
2.8 linux下,解壓縮bz2格式文件的命令是**_**
2.9 linux下,查看網路連接狀態的命令是**___**
2.10Linux查看文件系統的命令為__,顯示目錄或文件佔用磁碟的命令為___
2.11通常我們測試網路連通性使用的ping命令,它是通過____協議進行工作的
2.12簡述下列命令的各自作用
nslookup
dig
top
traceroute
2.13將/home/stud1/wang目錄做歸檔壓縮,壓縮後生成wang.tar.gz文件,並將此問價保存到/home目錄下,實現此任務的tar命令格****_****
2.14Linux系統查看進程數的命令___
2.15Linux系統查看系統內存的命令:____,**__**
2.16Linux系統查看cpu使用率的命令:____,**__**
2.17Linux系統查看硬碟空間使用率的命令:___
2.18Linux系統將某一文件下的所有.log文件進行打包壓縮,命令為___
2.19Linux常用的性能監控命令是:_、_、_、_、_、_等
2.20假設output程序可能輸出標准輸出和標准錯誤,請寫出一條命令把這兩者都忽略__
2.21 rpm軟體包安裝命令**_**
3簡答
3.1查看硬碟結構顯示的命令?查看文檔命令?編輯文檔命令?
3.2配置網路環境的命令,手工修改IP,主機名,DNS和網關
3.3有壓縮包a.tar.gz,如何解壓該包?如何不解壓該包,如何查看該包的內容?
3.4某進程abcd在系統中起了很多,數量難以統計,造成系統負荷較高,如何一條命令確保將此進程全部殺掉
3.5某日誌路徑是/data/logs/a.txt,如何跟蹤該日誌,以查看當時的運行狀態?
3.6 dmesg命令顯示的是哪方面信息
3.7尋找名稱為mytest.log的文件
3.8寫出-sh與df-h的區別
3.9查看當前linux伺服器是否監聽80埠,如果監聽,請找出其進程ID,並結束該進程。
3.10使用curl或者wget獲取http服務的header信息。
3.11寫出查看linux系統性能的命令,如cpu、內存、流量、io等
3.12解釋下列命令的意思
dd if=/dev/random of=/dev/sda
3.13如何查看佔用埠8080的進程
3.14查著佔用內存最多的進程
3.15壓縮和解壓縮目錄/opt/gjsy/所有文件命令
3.16Linxu系統下如何查看8080埠上運行的程序狀態
3.17ps aux中的VSZ代表什麼意思,RSS代表什麼意思?
3.18PING是使用TCP/IP協議中的**_**協議
3.19寫出網路故障排查常用的命令**__**
3.20寫出你常用的網路抓包工具,軟體名稱**__**
3.21將/home/stud1/wang目錄做歸檔壓縮,壓縮後生成wang.tar.gz文件,並將此文件保存到/home目錄下,實現此任務的tar命令格式___
3.22解釋該命令的含義:nohup zcat test.gz|grep"x6game">~/log.txt
2>/dev/null&
3.23查看系統硬體負載工具或命令有哪些
3.24使用lsof命令查看佔用80埠的進程
3.25如何使用CURL測試POST介面
3.26怎樣在目錄/home/user/training/下找到擴展名為txt的文件
3.27最常用的網路測試命令有什麼?
3.28ping的測試結果中都包含哪些部分?
3.29如何找出佔用22埠的進程及進程號?
3.30如何刪除當前目錄(包含字目錄)下所有30天以前創建的文件名後綴為.log的文件
3.31以下一些Linux命令的作用分別是什麼?
init 0
chkconfig--level 3 sendmail on
tar-czvf test.tar.gz./
chown-R
ln-s/data/log//var/log/sina_log
umount-f/data0
rpm-ivh hui.rpm
rpm-qf/bin/ls
3.32LINUX常用命令pwd、top、df、ifconfig、cat分別代表什麼含義?
3.33linux常用命令:關機、重啟、編輯某文檔文件、刪除某文件、更改操作系統密碼命令分別是什麼?
3.34請使用命令:刪除/backup目錄下10天前的普通文件
3.35如何查看伺服器當前連接ip的列表
3.36寫出liunx系統中diff、chmod、grep、kill、tar五個常用命令的功能
3.37簡述tar-cjvf/tmp/test.tar.gz/root命令中錯誤及錯誤原因
3.38Linux系統從A伺服器測試B伺服器一個tcp埠是否聯通使用___
3.39寫一個腳本查找最後創建時間使3天前,後綴是*.log的文件並刪除
3.40linux如何根據進程ID查找啟動程序的路徑
3.41查看佔用swap的進程id
3.42列出linux常見打包工具並寫相應解壓縮參數(至少三種)
3.43Linux中鎖定一個文件用什麼命令?他和md5sum有什麼區別?
3.44如何在系統中查找所有所屬用戶為user1的文件
3.45查看某個文件或者文件夾佔用磁碟空間大小的命令
3.46如何查看遠程linux系統運行了多少時間?我的伺服器內存,cpu,硬碟都是多少,系統版本,linux會優先將數據緩存到內存中,我的機器真實內存消耗實際上是多少
3.47查看伺服器當前開啟了哪些埠?如何查看某伺服器是否存在IO壓力
3.48如何查看某個文件system.log被哪些進程佔用
擴展
1.21在退出unix系統賬戶之後還需要繼續運行某個進程,那麼可用()
awk sed crontab nohup screen
1.20使用trace命令的目的是()
可用的,十分成功的測試手段
非常基本的測試手段
把IP地址和DNS加入路由表中
在源到目標傳輸的過程中查找失散點
1.27哪個變數用來指定一個遠程x應用程序將輸出放到哪個x server上
TERM
DISPLAY
ECHO
OUTPUT
1.33P系列伺服器被用做文件伺服器,所有的用戶文件存都放在一非rootvg的文件系統上,用什麼方法可以快速備份和恢復這些數據和文件系統的定義()
tar
cpio
savefs
savevg
5. Oracle歸檔模式的命令及參數說明
Oracle資料庫能運行在 種模式下:歸檔模式(archivelog)和非歸檔模式(noarchivelog) 歸檔模式能提高Oracle資料庫的可恢復性 生產資料庫都應該運行在此模式下 歸檔模式應該和相應的備份策略相結合 只有歸檔模式沒有相應的備份策略只會帶來麻煩
檢查歸檔模式命令
SQL> archive log list Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence Current log sequence
設置歸檔模式
SQL> shutdown immediate; Database closed Database di *** ounted ORACLE instance shut down SQL> startup mount ORACLE instance started Total System Global Area bytes Fixed Size bytes Variable Size bytes Database Buffers bytes Redo Buffers bytes Database mounted SQL> alter database archivelog; Database altered SQL> alter database open; Database altered SQL> archive log list; Database log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence Next log sequence to archive Current log sequence
如果需要停止歸檔模式 使用 alter database noarchivelog 命令 Oracle g之前 你還需要修改初始化參數使資料庫處於自動歸檔模式 在pfile/spfile中設置如下參數
log_archive_start = true
重啟資料庫此參數生效 此時資料庫處於自動歸檔模式 也能在資料庫啟動過程中 手工執行
archive log start
使資料庫啟用自動歸檔 不過重啟後資料庫仍然處於手工歸檔模式 g使用db_recovery_file_dest來作為歸檔日誌的存放地
SQL> show parameter db_recovery NAME TYPE VALUE db_recovery_file_dest string /home/oracle/ora g/flash_reco very_area/ db_recovery_file_dest_size big integer G
能修改db_recovery_file_dest_size參數的大小
alter system set db_recovery_file_dest_size=
一
重做日誌文件把對數據文件的修改在寫入數據文件之前記錄下來 日誌文件以一種循環的方式被寫入信息 當一個日誌組被寫滿時 回自動向另一個日誌組寫入 管理員可以手工切換當前日誌組 alter system switch logfile 可以切換當前的日誌組 當日誌組發生切換時 oracle向新的重做日誌組分配一個日誌序列號 當存在大量的事務時必須調整重做日誌文件的大小 以避免頻繁的日誌切換發生 重做日誌文件被順序的寫在磁碟上 如果磁碟沒有其他活動 I/O將會很快 應該把重做日誌文件保存在單獨的磁碟上 以獲取良好的性能 尤其不要把經常處於活動狀態的SYSTEM UNDOTBS SYSAUX的表空間或索引表空間文件保存到同一塊磁碟上 因為只有在事務的請求被寫到重做日誌後 請求才能被完成 最大限度的提高重做日誌的吞吐量是oracle性能優化首先考慮的因素 當發生重做日誌切換而生成一個新的檢查點時 DBWn就會寫臟緩沖器塊 這樣會影響oracle的性能 可以通過fast_start_mttr_target初始化參數來調整檢查點
每個資料庫都有自己的聯機重做日誌組 一個聯機重做日誌組有多個重做日誌成員 每個日誌成員有單獨的操作系統文件 在一個rac配置(這種配置中單個資料庫裝有多個實例) 每個實例有一個聯機重做日誌線程 每個實例的lgwr進程都寫到相同的聯機重做日誌文件 因此oracle必須跟蹤資料庫實例修改來自那個實例
當多路復用重做日誌文件時 應該把一個組的成員保存在不同的磁碟上 以避免單點故障的發生 如果重做日誌文件組的所有成員都無法寫入數據 oracle將被掛起 Dba可以在創建資料庫時創建多個聯機重做日誌文件的副本
對日誌的操作如下
a 創建新的重做日誌組
Alter database add logfile
Group ( /ora /oradata/mydb /redo log
/ora /oradata/mdb /redo log ) size m;
如果省略group子句 oracle分配一個有效的編號 如下
Alter database add logfile
b 添加新的組成員
alter database add logfile member
/ora /oradata/mydb /redo log to group ;(向第二組中添加新的成員)
c 重命名日誌成員
在重命名日誌組成員之前新的目標必須已經存在 Oracle的sql命令只是把控制文件中的內部指針指向新的日誌文件 Dba需要用操作系統命令來重命名此日誌文件 步驟如下
.關閉資料庫
.使用操作系統命令重命名或移動日誌文件
啟動資料庫實例(start mount) 重命名控制文件中的日誌文 件成員 Alter database rename file old_redo_file_name to new_redo_file_name ;
.打開資料庫 alter database open
.備份控制文件
D.刪除重做日誌組
將要被刪除的重做日誌組不能是活動的日誌組 Alter database drop logfile group ; 當重做日誌文件被刪除後 相關的操作系統文件也被刪除 相關的資料庫控制文件也給更新
E.使用和刪除重做日誌組相同的方式 dba可以只刪除一個非活動的重做日誌組的成員
Alter database drop logfile member /ora /oradata/mydb /redo log ;
f 創建聯機重做日誌文件
當重做日誌組成員遭到破壞時 可以刪除並重新添加這個重做日誌組或組成員
二
檔案重做日誌文件
它是聯機重做日誌文件的一個副本 Lgwr和arcn進程的故障都會引起資料庫的掛起 只有當arcn進程把聯機重做日誌寫到歸檔地後 才可以向此重做日誌組成員寫入數據
設置歸檔目的地
可以在參數初始化文件中的log_archive_dest_n來定義歸檔目的地 歸檔目的地可以在本地計算機上 也可在遠程的資料庫伺服器上 定義語法如下
LOG_ARCHIVE_DEST_n= null_string |
(service=tnsnames_name |
LOCATION= directory_name )
[MANDATORY | OPTIONAL]
[REOPEN[=integer]]
例
LOG_ARCHIVE_DEST_ =((LOCATION= /archive/MYDB ) MANDATORU REOPEN= )定義歸檔日誌的位置為/archive/MYDB mandatory子句的定義向這個位置寫日誌的操作必須的成功的 Reopen子句定義在日誌寫入失敗時 下次嘗試寫入操作的時間間隔 預設是 秒
例
LOG_ARCHIVE_DEST_@=(SERVICE=STDBY ) OPTIONAL REOPEN;語句中的stdby 的連接到遠程資料庫的oracle net連接串 由於寫操作是可選的 所以資料庫活動繼續 當arcn進程不能寫檔案日誌文件時 進程將立即嘗試重新寫入(這個動作有reopen子句來定義)
Log_archive_min_succeed_dest:定義最少歸檔日誌的副本數量
Log_archive_format:定義歸檔日誌文件採用的名稱和使用的格式 可以使用預定義變數來構造每個歸檔日誌文件的名稱 變數如下
%s 日誌序列號
%t 線程號
%r 復位日誌id
%d 資料庫id
lishixin/Article/program/Oracle/201311/17689
6. linux下的一些壓縮和歸檔命令
linux下的一些壓縮和歸檔命令一、常見的壓縮/解壓縮工具compress
/
uncomprss
後綴:.zgzip
/
gunzip
後綴:.gzbzip2
/
bunzip2
後綴:.bz2zip
/
unzip
後綴:.zip註:第一種compress已經不太常見,後面三種都是現在比較流行的壓縮/解壓縮工具二、具體使用1)gzip$gzip
filename
//壓縮一個文件,但是壓縮後原來的文件會被刪除$gunzip
fielname.gz
//解壓後.gz文件會被刪除$gzip
-d
filename.gz
//相當於gunzip
filename.gz$gzip
-c
filename
>>
filename.gz
//用來實現既壓縮原文件又保留原文件$gzip
-n
filename
//自定義壓縮級別(級別<1-9>壓縮比例由低到高,越高壓縮速度越慢,默認為6)$zcat
filename.gz
//不解壓的情況下查看壓縮文件的內容註:gzip無法壓縮目錄(如果壓縮目錄,就對目錄中的文件進行逐個壓縮)2)bzip,壓縮比相對gzip大一些,使用的格式和gzip類似,但有以下幾個地方不同$bzip
-k
filename
//壓縮後保留原文件$bzip2
-k
filname.bz2
//解壓縮時保留原文件$bzcat
filename.bz2
//不用解壓縮直接查看壓縮文件的內容註:bzip也只能對單個文件壓縮,不能壓縮目錄3)zip,可以同時歸檔並且壓縮$zip
test.zip
filename1
filename2
filename3
//同時把幾個文件壓縮在一個文件裡面(壓縮不刪除原文件,解壓縮也不刪除原壓縮文件)註:zip可以對目錄進行壓縮,壓縮後的文件名可以自定義4)tar,文件歸檔命令(本身不做任何壓縮)$tar
-cf
test.tar
filename1
filename2
filename3
//必須指定歸檔後的文件名,-c:進行歸檔,-f:指定文件名$tar
-tf
test.tar
//查看歸檔文件的內容$tar
-xf
test.tat
//展開歸檔文件的內容$tar
-cvf
test.tar
filename1
filename2
filename3
//歸檔這三個文件,-v:顯示歸檔過程信息$tar
-xvf
test.tar
//展開歸檔文件,並顯示過程信息三、歸檔工具tar盒gzip,bzip2配合使用$tar
-zcvf
test.tar.gz
filename1
filename2
filename3
//歸檔並壓縮這三個文件$tar
-zxvf
test.tar.gz
//解壓縮並解檔$tar
-jcvf
test.tar.bz2
filename1
filename2
filename3
//歸檔並壓縮這三個文件$tar
-jxvf
test.tar.bz2
//解壓縮並
解檔$tar
-jxvf
test.tar.bz2
-C
/tmp
//-C:指定解壓到的目錄,默認為當前目錄
7. 文件如何分類,怎麼歸檔
1、首先把所有的文件都收集到一起,疊放整齊擺放在桌面上。不要把文件漏回掉了,要不然以後答在查詢文件的時候,會很麻煩的;
8. Linux裡面歸檔命令是什麼
題主你好,
linux中歸檔命令是tar.
理解歸檔命令: 所謂"歸檔"用大白話來說就是"打包".
如我有一個文件夾叫test, 裡面有1-8共8個文件:
可以看到1-8這8個文件都解壓出來了.
寫在最後:
歸檔用的最多的原因應該就是管理和傳輸方便一些, 從管理上來說, 如我這一個文件夾里是100首歌曲,則打包後命名為music_100.tar,這樣你一看到這個包名就知道裡面是100首歌,此時你想給這100首歌換個位置,直接把這個文件移動到其它文件夾中即可, 而不用去移動那100個歌曲文件. 傳輸上也一樣, 我想把這100首歌傳給朋友,如果使用歸檔文件的話, 傳一個就行了,否則還要傳100個.
另外,上面解釋歸檔時,其實很籠統, 有很多細節沒有講到, 如果題主想要進一步的理解其它功能,可以使用tar --help 或man tar 或info tar等等命令看看它的詳細文檔.
=====
希望可以幫到題主, 歡迎追問
9. 在Linux 中如何歸檔文件和目錄
歸檔文件和目錄最常見的程序是:
tarzip
這是一個很大的話題,所以,我將分兩部分發表這篇文章。在第一部分中,我們將看到如何使用 tar 命令來歸檔文件和目錄。
使用 tar 命令歸檔文件和目錄
Tar 是一個 Unix 命令,代表 Tape Archive(磁帶歸檔)。它用於將多個文件(相同或不同大小)組合或存儲到一個文件中。在 tar 實用程序中有 4 種主要的操作模式。
c – 從文件或目錄中建立歸檔
x – 提取歸檔
r – 將文件追加到歸檔
t – 列出歸檔的內容
有關完整的模式列表,參閱 man 手冊頁。
創建一個新的歸檔
為了本指南,我將使用名為 ostechnix 的文件夾,其中包含三種不同類型的文件。
$ ls ostechnix/
file.odt image.png song.mp3
現在,讓我們為 ostechnix 目錄創建一個新的 tar 歸檔。
$ tar cf ostechnix.tar ostechnix/
這里,c 標志指的是創建新的歸檔,f 是指定歸檔文件。
同樣,對當前工作目錄中的一組文件創建歸檔文件,使用以下命令:
$ tar cf archive.tar file1 file2 file 3
提取歸檔
要在當前目錄中提取歸檔文件,只需執行以下操作:
$ tar xf ostechnix.tar
我們還可以使用 C 標志(大寫字母 C)將歸檔提取到不同的目錄中。例如,以下命令將歸檔文件提取到 Downloads 目錄中。
$ tar xf ostechnix.tar -C Downloads/
或者,轉到 Downloads 文件夾並像下面一樣提取其中的歸檔。
$ cd Downloads/
$ tar xf ../ostechnix.tar
有時,你可能想要提取特定類型的文件。例如,以下命令提取 「.png」 類型的文件。
$ tar xf ostechnix.tar --wildcards "*.png"
創建 gzip 和 bzip 格式的壓縮歸檔
默認情況下,tar 創建歸檔文件以 .tar 結尾。另外,tar 命令可以與壓縮實用程序 gzip 和 bzip 結合使用。文件結尾以 .tar 為擴展名使用普通 tar 來歸檔文件,文件以 tar.gz 或 .tgz 結尾使用 gzip 歸檔並壓縮文件,文件以 tar.bz2 或 .tbz 結尾使用 bzip 歸檔並壓縮。
首先,讓我們來創建一個 gzip 歸檔:
$ tar czf ostechnix.tar.gz ostechnix/
或者:
$ tar czf ostechnix.tgz ostechnix/
這里,我們使用 z 標志來使用 gzip 壓縮方法壓縮歸檔文件。
你可以使用 v 標志在創建歸檔時查看進度。
$ tar czvf ostechnix.tar.gz ostechnix/
ostechnix/
ostechnix/file.odt
ostechnix/image.png
ostechnix/song.mp3
這里,v 指顯示進度。
從一個文件列表創建 gzip 歸檔文件:
$ tar czf archive.tgz file1 file2 file3
要提取當前目錄中的 gzip 歸檔文件,使用:
$ tar xzf ostechnix.tgz
要提取到其他文件夾,使用 -C 標志:
$ tar xzf ostechnix.tgz -C Downloads/
現在,讓我們創建 bzip 歸檔。為此,請使用下面的 j 標志。
創建一個目錄的歸檔:
$ tar cjf ostechnix.tar.bz2 ostechnix/
或
$ tar cjf ostechnix.tbz ostechnix/
從一個列表文件中創建歸檔:
$ tar cjf archive.tar.bz2 file1 file2 file3
或
$ tar cjf archive.tbz file1 file2 file3
為了顯示進度,使用 v 標志。
現在,在當前目錄下,讓我們提取一個 bzip 歸檔。這樣做:
$ tar xjf ostechnix.tar.bz2
或者,提取歸檔文件到其他目錄:
$ tar xjf ostechnix.tar.bz2 -C Downloads
一次創建多個目錄和/或文件的歸檔
這是 tar 命令的另一個最酷的功能。要一次創建多個目錄或文件的 gzip 歸檔文件,使用以下文件:
$ tar czvf ostechnix.tgz Downloads/ Documents/ ostechnix/file.odt
上述命令創建 Downloads、 Documents 目錄和 ostechnix 目錄下的 file.odt 文件的歸檔,並將歸檔保存在當前工作目錄中。
在創建歸檔時跳過目錄和/或文件
這在備份數據時非常有用。你可以在備份中排除不重要的文件或目錄,這是 –exclude 選項所能幫助的。例如你想要創建 /home 目錄的歸檔,但不希望包括 Downloads、 Documents、 Pictures、 Music 這些目錄。
這是我們的做法:
$ tar czvf ostechnix.tgz /home/sk --exclude=/home/sk/Downloads --exclude=/home/sk/Documents --exclude=/home/sk/Pictures --exclude=/home/sk/Music
上述命令將對我的 $HOME 目錄創建一個 gzip 歸檔,其中不包括 Downloads、Documents、Pictures 和 Music 目錄。要創建 bzip 歸檔,將 z 替換為 j,並在上例中使用擴展名 .bz2。
列出歸檔文件但不提取它們
要列出歸檔文件的內容,我們使用 t 標志。
$ tar tf ostechnix.tar
ostechnix/
ostechnix/file.odt
ostechnix/image.png
ostechnix/song.mp3
要查看詳細輸出,使用 v 標志。
$ tar tvf ostechnix.tar
drwxr-xr-x sk/users 0 2018-03-26 19:52 ostechnix/
-rw-r--r-- sk/users 9942 2018-03-24 13:49 ostechnix/file.odt
-rw-r--r-- sk/users 36013 2015-09-30 11:52 ostechnix/image.png
-rw-r--r-- sk/users 112383 2018-02-22 14:35 ostechnix/song.mp3
追加文件到歸檔
文件或目錄可以使用 r 標志添加/更新到現有的歸檔。看看下面的命令:
$ tar rf ostechnix.tar ostechnix/ sk/ example.txt
上面的命令會將名為 sk 的目錄和名為 exmple.txt 添加到 ostechnix.tar 歸檔文件中。
你可以使用以下命令驗證文件是否已添加:
$ tar tvf ostechnix.tar
drwxr-xr-x sk/users 0 2018-03-26 19:52 ostechnix/
-rw-r--r-- sk/users 9942 2018-03-24 13:49 ostechnix/file.odt
-rw-r--r-- sk/users 36013 2015-09-30 11:52 ostechnix/image.png
-rw-r--r-- sk/users 112383 2018-02-22 14:35 ostechnix/song.mp3
drwxr-xr-x sk/users 0 2018-03-26 19:52 sk/
-rw-r--r-- sk/users 0 2018-03-26 19:39 sk/linux.txt
-rw-r--r-- sk/users 0 2018-03-26 19:56 example.txt
TL;DR
創建 tar 歸檔:
普通 tar 歸檔: tar -cf archive.tar file1 file2 file3
Gzip tar 歸檔: tar -czf archive.tgz file1 file2 file3
Bzip tar 歸檔: tar -cjf archive.tbz file1 file2 file3
提取 tar 歸檔:
普通 tar 歸檔: tar -xf archive.tar
Gzip tar 歸檔: tar -xzf archive.tgz
Bzip tar 歸檔: tar -xjf archive.tbz
我們只介紹了 tar 命令的基本用法,這些對於開始使用 tar 命令足夠了。但是,如果你想了解更多詳細信息,參閱 man 手冊頁。
$ man tar
10. linux文件歸檔是什麼意思
linux文件歸檔的意思是為文件或目錄備份,建立歸檔文件
tar命令可以為linux的文件和目錄創建檔案。利用tar,可以為某一特定文件創建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文件。tar最初被用來在磁帶上創建檔案,現在,用戶可以在任何設備上創建檔案。利用tar命令,可以把一大堆的文件和目錄全部打包成一個文件,這對於備份文件或將幾個文件組合成為一個文件以便於網路傳輸是非常有用的。
首先要弄清兩個概念:打包和壓縮。打包是指將一大堆文件或目錄變成一個總的文件;壓縮則是將一個大的文件通過一些壓縮演算法變成一個小文件。
為什麼要區分這兩個概念呢?這源於Linux中很多壓縮程序只能針對一個文件進行壓縮,這樣當你想要壓縮一大堆文件時,你得先將這一大堆文件先打成一個包(tar命令),然後再用壓縮程序進行壓縮(gzip bzip2命令)。
linux下最常用的打包程序就是tar了,使用tar程序打出來的包我們常稱為tar包,tar包文件的命令通常都是以.tar結尾的。生成tar包後,就可以用其它的程序來進行壓縮。
1.命令格式:
tar[必要參數][選擇參數][文件]
2.命令功能:
用來壓縮和解壓文件。tar本身不具有壓縮功能。他是調用壓縮功能實現的
3.命令參數:
必要參數有如下:
-A 新增壓縮文件到已存在的壓縮
-B 設置區塊大小
-c 建立新的壓縮文件
-d 記錄文件的差別
-r 添加文件到已經壓縮的文件
-u 添加改變了和現有的文件到已經存在的壓縮文件
-x 從壓縮的文件中提取文件
-t 顯示壓縮文件的內容
-z 支持gzip解壓文件
-j 支持bzip2解壓文件
-Z 支持compress解壓文件
-v 顯示操作過程
-l 文件系統邊界設置
-k 保留原有文件不覆蓋
-m 保留文件不被覆蓋
-W 確認壓縮文件的正確性
可選參數如下:
-b 設置區塊數目
-C 切換到指定目錄
-f 指定壓縮文件
--help 顯示幫助信息
--version 顯示版本信息
4.常見解壓/壓縮命令
tar
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(註:tar是打包,不是壓縮!)
.gz
解壓1:gunzip FileName.gz
解壓2:gzip -d FileName.gz
壓縮:gzip FileName
.tar.gz 和 .tgz
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
.bz2
解壓1:bzip2 -d FileName.bz2
解壓2:bunzip2 FileName.bz2
壓縮: bzip2 -z FileName
.tar.bz2
解壓:tar jxvf FileName.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
.bz
解壓1:bzip2 -d FileName.bz
解壓2:bunzip2 FileName.bz
壓縮:未知
.tar.bz
解壓:tar jxvf FileName.tar.bz
壓縮:未知
.Z
解壓:uncompress FileName.Z
壓縮:compress FileName
.tar.Z
解壓:tar Zxvf FileName.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
.zip
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
.rar
解壓:rar x FileName.rar
壓縮:rar a FileName.rar DirName
5.使用實例
實例1:將文件全部打包成tar包
命令:
tar -cvf log.tar log2012.log
tar -zcvf log.tar.gz log2012.log
tar -jcvf log.tar.bz2 log2012.log
輸出:
[root@localhost test]# ls -al log2012.log
---xrw-r-- 1 root root 302108 11-13 06:03 log2012.log
[root@localhost test]# tar -cvf log.tar log2012.log
log2012.log
[root@localhost test]# tar -zcvf log.tar.gz log2012.log
log2012.log
[root@localhost test]# tar -jcvf log.tar.bz2 log2012.log
log2012.log
[root@localhost test]# ls -al *.tar*
-rw-r--r-- 1 root root 307200 11-29 17:54 log.tar
-rw-r--r-- 1 root root 1413 11-29 17:55 log.tar.bz2
-rw-r--r-- 1 root root 1413 11-29 17:54 log.tar.gz
說明:
tar -cvf log.tar log2012.log 僅打包,不壓縮!
tar -zcvf log.tar.gz log2012.log 打包後,以 gzip 壓縮
tar -zcvf log.tar.bz2 log2012.log 打包後,以 bzip2 壓縮
在參數 f 之後的文件檔名是自己取的,我們習慣上都用 .tar 來作為辨識。 如果加 z 參數,則以 .tar.gz 或 .tgz 來代表 gzip 壓縮過的 tar包; 如果加 j 參數,則以 .tar.bz2 來作為tar包名。
實例2:查閱上述 tar包內有哪些文件
命令:
tar -ztvf log.tar.gz
輸出:
[root@localhost test]# tar -ztvf log.tar.gz
---xrw-r-- root/root 302108 2012-11-13 06:03:25 log2012.log
說明:
由於我們使用 gzip 壓縮的log.tar.gz,所以要查閱log.tar.gz包內的文件時,就得要加上 z 這個參數了。
實例3:將tar 包解壓縮
命令:
tar -zxvf /opt/soft/test/log.tar.gz
輸出:
[root@localhost test3]# ll
總計 0[root@localhost test3]# tar -zxvf /opt/soft/test/log.tar.gz
log2012.log
[root@localhost test3]# ls
log2012.log
[root@localhost test3]#
說明:
在預設的情況下,我們可以將壓縮檔在任何地方解開的
實例4:只將 /tar 內的 部分文件解壓出來
命令:
tar -zxvf /opt/soft/test/log30.tar.gz log2013.log
輸出:
[root@localhost test]# tar -zcvf log30.tar.gz log2012.log log2013.log
log2012.log
log2013.log
[root@localhost test]# ls -al log30.tar.gz
-rw-r--r-- 1 root root 1512 11-30 08:19 log30.tar.gz
[root@localhost test]# tar -zxvf log30.tar.gz log2013.log
log2013.log
[root@localhost test]# ll
-rw-r--r-- 1 root root 1512 11-30 08:19 log30.tar.gz
[root@localhost test]# cd test3
[root@localhost test3]# tar -zxvf /opt/soft/test/log30.tar.gz log2013.log
log2013.log
[root@localhost test3]# ll
總計 4
-rw-r--r-- 1 root root 61 11-13 06:03 log2013.log
[root@localhost test3]#
說明:
我可以透過 tar -ztvf 來查閱 tar 包內的文件名稱,如果單只要一個文件,就可以透過這個方式來解壓部分文件!
實例5:文件備份下來,並且保存其許可權
命令:
tar -zcvpf log31.tar.gz log2014.log log2015.log log2016.log
輸出:
[root@localhost test]# ll
總計 0
-rw-r--r-- 1 root root 0 11-13 06:03 log2014.log
-rw-r--r-- 1 root root 0 11-13 06:06 log2015.log
-rw-r--r-- 1 root root 0 11-16 14:41 log2016.log
[root@localhost test]# tar -zcvpf log31.tar.gz log2014.log log2015.log log2016.log
log2014.log
log2015.log
log2016.log
[root@localhost test]# cd test6
[root@localhost test6]# ll
[root@localhost test6]# tar -zxvpf /opt/soft/test/log31.tar.gz
log2014.log
log2015.log
log2016.log
[root@localhost test6]# ll
總計 0
-rw-r--r-- 1 root root 0 11-13 06:03 log2014.log
-rw-r--r-- 1 root root 0 11-13 06:06 log2015.log
-rw-r--r-- 1 root root 0 11-16 14:41 log2016.log
[root@localhost test6]#
說明:
這個 -p 的屬性是很重要的,尤其是當您要保留原本文件的屬性時
實例6:在 文件夾當中,比某個日期新的文件才備份
命令:
tar -N "2012/11/13" -zcvf log17.tar.gz test
輸出:
[root@localhost soft]# tar -N "2012/11/13" -zcvf log17.tar.gz test
tar: Treating date `2012/11/13' as 2012-11-13 00:00:00 + 0 nanoseconds
test/test/log31.tar.gz
test/log2014.log
test/linklog.log
test/log2015.log
test/log2013.log
test/log2012.log
test/log2017.log
test/log2016.log
test/log30.tar.gz
test/log.tar
test/log.tar.bz2
test/log.tar.gz
說明:
實例7:備份文件夾內容是排除部分文件
命令:
tar --exclude scf/service -zcvf scf.tar.gz scf/*
輸出:
[root@localhost test]# tree scf
scf
|-- bin
|-- doc
|-- lib
`-- service
`-- deploy
|-- info
`-- proct
7 directories, 0 files
[root@localhost test]# tar --exclude scf/service -zcvf scf.tar.gz scf/*
scf/bin/
scf/doc/
scf/lib/