日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

文件查找和打包压缩

發(fā)布時(shí)間:2023/12/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 文件查找和打包压缩 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1、文件查找工具

1)locate命令

locate 1.作用:對(duì)文件索引數(shù)據(jù)庫(kù)中的內(nèi)容進(jìn)行搜索 2.新建系統(tǒng),/var/lib/mlocate/下沒(méi)有mlocate.db文件:1)等一段時(shí)間,系統(tǒng)會(huì)自動(dòng)生成此文件2)updatedb命令創(chuàng)建文件索引數(shù)據(jù)庫(kù)文件 3.updatedb對(duì)應(yīng)的配置文件/etc/updatedb.conf,定義了創(chuàng)建mlocate.db目錄索引的工作范圍 4.參數(shù): -i 不區(qū)分大小寫搜索 -r 使用基本的正則表達(dá)式 --regex 使用擴(kuò)展正則表達(dá)式 -b 只匹配基名,默認(rèn)匹配全路徑 -c 顯示匹配文件的數(shù)量 -l 限制輸出的條目 5.適用范圍:適合搜索相對(duì)靜態(tài)不常變化的文件 [root@szb ~]# locate -c sysconfig 147[root@szb ~]# locate -l 3 -r "\.conf$" /apps/nginx/conf/fastcgi.conf /apps/nginx/conf/nginx.conf /etc/GeoIP.conf

2)find命令

find 1.作用:在指定路徑直接實(shí)時(shí)遞歸查找文件,效率不高 2.語(yǔ)法格式:find 查找選項(xiàng) [查找路徑范圍] [表達(dá)式]表達(dá)式:默認(rèn)輸出查找的內(nèi)容到控制臺(tái),可以是查找條件選項(xiàng)或者處理動(dòng)作等 3.查找條件選項(xiàng):-maxdepth 最大搜索遍歷深度-mindepth 最小搜索遍歷深度-name 指定文件名,支持通配符-iname 忽略文件名稱大小寫-type 根據(jù)文件類型查找(f/d/l/s/b/c/p)-size 根據(jù)文件大小進(jìn)行匹配-inum 根據(jù)inode編號(hào)查找,ls -i查看-empty 查找空目錄或空文件-samefile 可以找到和文件相同inode的文件-links 查找鏈接數(shù)-regex 正則匹配-user 根據(jù)文件數(shù)組-uid 根據(jù)UID進(jìn)行匹配-group/-gid 根據(jù)屬組的名或id進(jìn)行匹配-nouser 文件屬主不存在的-nogroup 文件屬組不存在的-perm 根據(jù)文件權(quán)限,666,必須都是;/666只要有一個(gè)權(quán)限是;-666都必須包含以天為單位:-atime 根據(jù)訪問(wèn)時(shí)間查找-mtime 根據(jù)修改時(shí)間查找-ctime 根據(jù)創(chuàng)建時(shí)間查找以分鐘為單位:-amin/-mmin/-cmin 4.動(dòng)作:-ls 功能類似于ls -l-print0 查找的文件全路徑輸出,并用空字符null代替換行符進(jìn)行分界-delete 刪除查找出來(lái)的文件-ok 配合{} \;一起使用,{}表示查找到的文件,;代表ok語(yǔ)法結(jié)束符號(hào),需要交互-exec 等價(jià)于-ok,但是不需要交互確認(rèn) 5.多條件的邏輯組合-a -o -not/! 注意:復(fù)雜場(chǎng)景需要()將優(yōu)先級(jí)括起來(lái) 示例1: [root@szb test]# find -inum 1053064 ./diff.log示例2: [root@szb test]# find -name file -ls # -ls動(dòng)作 1053045 4 -rw-rw-r-- 1 root root 13 Jun 21 14:36 ./file [root@szb test]# find /root/test/ -type f -print0 /root/test/file2/root/test/file3/root/test/file4.bak/示例3: [root@szb test]# find -name file -fls info # -fls選項(xiàng)將ls顯示內(nèi)容保存到文件中 [root@szb test]# cat info 1053045 4 -rw-rw-r-- 1 root root 13 Jun 21 14:36 ./file示例4: [root@szb test]# find /etc/ -regex ".*.conf"示例5: [root@szb test]# find -name file --delete示例6: [root@szb test]# find -perm 644 -exec rm -rf {} \;

3)xargs命令

xargs 1.作用:有些命令不接受標(biāo)準(zhǔn)輸入,如ls;此命令接收標(biāo)準(zhǔn)輸入,將其傳遞到正確的位置上 2.參數(shù): -n 將每#個(gè)空格替換成行,從而將一行轉(zhuǎn)換成多行 -d 輸入指定一個(gè)定制的定界符 -0 將null字符代替空格作為分界符,作用等同于find的-print0 示例1: [root@szb test]# xargs hellp world hellp world # ctrl + d 會(huì)顯示此行結(jié)果示例2: [root@szb test]# seq 4| xargs 1 2 3 4示例3: [root@szb test]# echo {1..10} | xargs -n3 1 2 3 4 5 6 7 8 9 10示例4: [root@szb test]# echo -n "123s1232s1213s123" | xargs -d s -n2 123 1232 1213 123示例5: [root@szb test]# find /data -type f -ls # 按字母次序排序 [root@szb test]# find /data -type f | xargs ls -lS # 從大到小文件排序

2、文件壓縮工具

1)compress命令

compress/uncompress 1.作用:壓縮和解壓縮 2.軟件包:ncompress 3.壓縮后文件后綴:.Z 4.參數(shù): -c 不會(huì)刪除原文件,會(huì)將壓縮的內(nèi)容輸出至控制臺(tái) -d 解壓縮或uncompress 示例: [root@szb test]# compress -c file > file.Z

2)gzip命令

gzip/gunzip 1.作用:壓縮和解壓縮,壓縮率比compress高 2.軟件包:gzip 3.壓縮后文件后綴:.gz 4.壓縮率:1-9,默認(rèn)6,指定壓縮級(jí)別:gzip -9 5.參數(shù): -c 不會(huì)刪除原文件,會(huì)將壓縮的內(nèi)容輸出至控制臺(tái) -d 解壓縮或gunzip 6.如果需要保留壓縮包,可以用gzip包的zcat命令: eg:zcat file.gz > file 示例: [root@szb test]# dmesg | gzip > dmesg.log.gz # 配合管道符,將輸入信息進(jìn)行壓縮

3)bzip2命令

bzip2/bunzip2 1.作用:壓縮和解壓縮,壓縮率比gzip還有好點(diǎn) 2.軟件包:bzip2 3.壓縮后文件后綴:.bz2 4.壓縮率:1-9,默認(rèn)9 5.參數(shù): -k 保留源文件 -d 解壓縮或bunzip2

4)xz命令

xz/unxz 1.作用:壓縮和解壓縮,壓縮率更高 2.軟件包:xz 3.壓縮后文件后綴:.xz 4.壓縮率:1-9,默認(rèn)9 5.參數(shù): -k 保留源文件 -d 解壓縮或unxz

5)zip命令

zip/unzip 1.作用:壓縮和解壓縮,壓縮率更高 2.軟件包:zip,unzip 3.壓縮后文件后綴:.zip 4.格式:zip file.zip file 5.參數(shù): -k 保留源文件 -d 解壓縮或unzip -r 壓縮某個(gè)目錄下的所有文件 [root@szb test]# cat file | zip file.zip - # 使用管道進(jìn)行壓縮 [root@szb test]# unzip -p file.zip > file # 使用-p配合重定向進(jìn)行解壓

3、打包工具

1) tar命令

tar 1.作用:磁帶歸檔,用于將多個(gè)打包存放在磁帶或磁盤歸檔文件中 2.參數(shù): 常用選項(xiàng):壓縮:-zcvf;解壓縮:-xvf -c:創(chuàng)建存檔文件 -t:列出存檔文件內(nèi)容 -x:將存檔文件解包 -z:指定gzip壓縮格式 -v:顯示詳細(xì)信息 -f:指定存檔文件 -j:指定bzip2壓縮格式 -J:指定xz壓縮格式 # xz的壓縮率相對(duì)高一點(diǎn) -p:保留權(quán)限 -r:追加文件 -C:指定目錄-T:指定處理的文件 -X:排除指定文件的內(nèi)容 3.格式:tar -zcvf file.tar file 4.后綴名:.tar.gz或者.tar.bz2或者.tar.xz [root@szb test]# rpm -q tar # tar包已安裝 tar-1.26-35.el7.x86_64[root@szb test]# tar -zcvf file.tar.gz file # 壓縮 [root@szb test]# tar -xvf file.tar.gz # 解壓[root@szb test]# tar -xvf file.tar.gz -C szb/ # 指定具體目錄 [root@szb test]# tar -t -f file.tar.gz # 查看tar包內(nèi)容[root@szb test]# tar -cvfp file.tar -T file1 -X file2 # file1存放打包的路徑,file2存放不想打包的文件路徑

2)splite命令

splite 1.作用:文件切割 2.參數(shù): -b 指定切割的單位大小 -d 切割后的后綴名通過(guò)數(shù)值進(jìn)行區(qū)分00-99,默認(rèn)字母:aa到zz 3.分割后的文件通過(guò)cat和重定向>合并一起 [root@szb szb]# split -b 40k -d access_log file [root@szb szb]# ll total 184 -rw-r--r-- 1 root root 92669 May 10 21:15 access_log -rw-r--r-- 1 root root 40960 Jun 22 00:34 file00 -rw-r--r-- 1 root root 40960 Jun 22 00:34 file01 -rw-r--r-- 1 root root 10749 Jun 22 00:34 file02 [root@szb szb]# cat file* > access.log # 合并

3)cpio命令

cpio 1.作用:非常古老的歸檔工具,包管理命令,復(fù)制文件到歸檔包 2.三種運(yùn)行模式:copy-out:-o,歸檔或打包模式copy-in:-i,提取或解包模式copy-pass:-p,透?jìng)骰蚰夸浛截惸J?/span> 3.參數(shù): -t 列出標(biāo)準(zhǔn)輸入的歸檔文件中文件列表 -O 輸出到指定的歸檔文件名 -d 自動(dòng)生成目錄 [root@szb szb]# rpm -q cpio cpio-2.11-28.el7.x86_64[root@szb szb]# ls | cpio -ov > file.cpio # 將多個(gè)文件打包成一個(gè)文件 [root@szb szb]# cpio -tv < file.cpio # 查看包內(nèi)容 [root@szb szb]# cpio -idv < file.cpio # 解包文件

4、案例

示例1: 查找file文件命令 [root@szb szb]# find -name file示例2: 刪除/data/files目錄下1周前修改過(guò)的且大于10MB的文件 [root@szb szb]# find /data/files -type f -mtime +7 -size +10M -exec rm {} \;示例3: 查找/data目錄下用戶szb的以a開(kāi)頭的文件 [root@szb szb]# find /data/ -type f -a -user szb -a -name "a*"示例4: 查找file文件命令 [root@szb szb]# find -name file示例5: 查找file文件命令 [root@szb szb]# find -name file

總結(jié)

以上是生活随笔為你收集整理的文件查找和打包压缩的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。