linux之truncate命令、split命令用法及說明
功能描述
truncate命令:
- Linux truncate命令通常用于將每個文件的大小縮小或擴(kuò)展到指定的大小。文件的最終大小取決于初始大小。
- 如果文件(例如存檔文件或日志文件)大于指定的大小,則會丟失額外的數(shù)據(jù),但如果文件較短,則會對其進(jìn)行擴(kuò)展,擴(kuò)展部分為零字節(jié)。
split命令:
- split命令是Linux系統(tǒng)中的一個用于拆分文件的命令。
- 它可以將一個大文件拆分成多個小文件,以便于傳輸、存儲或處理。
truncate命令
大多數(shù)Linux發(fā)行版附帶truncate命令。如果您的系統(tǒng)沒有truncate命令,
對于CentOS 7:
# yum provides truncate coreutils-8.22-18.el7.x86_64 : A set of basic GNU tools commonly used in shell scripts Repo : base Matched from: Filename : /usr/bin/truncate
如果未安裝,請使用:
# yum-y install coreutils
truncate命令選項
用法:truncate 選項... 文件...
? -c, --no-create?? ?不創(chuàng)建文件 ? -o, --io-blocks?? ?將SIZE 視為IO 塊數(shù)而不使用字節(jié)數(shù) ? -r, --reference=RFILE ?base size on RFILE ? -s, --size=SIZE ? ? ? ?set or adjust the file size by SIZE bytes ? ? ? --help?? ??? ?顯示此幫助信息并退出 ? ? ? --version?? ??? ?顯示版本信息并退出
使用truncate時,SIZE參數(shù)必須是整數(shù)和可選單位(例如:10K是10*1024)。使用的單位是K、M、G、T、P、E、Z、Y(1024的冪)或KB、MB、…(1000的冪)。
SIZE參數(shù)的前綴也可以是以下修改字符之一:“+”擴(kuò)展“,-”減少“,”<”最多“,>”至少“/”向下舍入到“%”的倍數(shù),“%”向上舍入到“%”的倍數(shù)。
truncate用法示例
1.這非常有用,例如用于清除日志文件。
這比手動刪除文件并創(chuàng)建新文件要好。
截斷過程基本上刪除了文件的所有內(nèi)容。它不會刪除文件本身,但會將其作為零字節(jié)文件留在磁盤上。
# truncate -s 0 file
2.特定大小
# truncate -s 100k file
3.假設(shè)您有一個500K文件,并希望將其縮小到250K。您將使用-s選項并指定-in大小
truncate -s -250K file.txt
split命令
split命令選項
用法:split [選項]... [輸入 [前綴]]
-a, --suffix-length=N : 指定輸出文件名的后綴長度(默認(rèn)為2個:aa,ab...) -d, --numeric-suffixes[=FROM] : 指定輸出文件名的后綴用數(shù)字代替 -l, --lines=NUMBER: 行數(shù)分割模式(指定每多少行切成一個小文件;默認(rèn)行數(shù)是1000行) -b,--bytes=SIZE : 二進(jìn)制分割模式(支持單位:k/m)? -C, --line-bytes=SIZE: 文件大小分割模式(切割時盡量維持每行的完整性) ? -e, --elide-empty-files:不產(chǎn)生空的輸出文件?? ? ? ? --filter=COMMAND:寫入到shell命令行? ?? ? -n, --number=CHUNKS:產(chǎn)生chunks文件 ? -u, --unbuffered ? ?無需緩存 ? ? ? ?--verbose?? ??? ?在每個輸出文件打開前輸出文件特征 ? ? ? ?--help? ? ? ? ? ? ? 顯示此幫助信息并退出 ? ? ? ?--version? ? ? ? ?顯示版本信息并退出
CHUNKS可能是:
- 根據(jù)輸入大小將N個文件拆分為N個文件
- K/N輸出第Kth個N到stdout
- l/N拆分為N個文件而不拆分行
- l/K/N將N的Kth輸出到stdout而不拆分行
- r/N類似于“l”,但使用循環(huán)分布
- r/K/N類似,但僅將N的Kth輸出到stdout
- split [-a] [-d] [-l <行數(shù)>] [-b <字節(jié)>] [-C <字節(jié)>] [要切割的文件] [輸出文件名]
split用法示例
1.行切割文件
$ split -l 300000 users.sql? /data/users_
2.使用數(shù)字后綴
$ split -d -l 300000 users.sql? /data/users_
3.按字節(jié)大小分割
$ split -d -b 100m users.sql? /data/users_
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Xampp和wordpress在Centos7上的搭建與使用
通過實例給大家詳細(xì)分析了Xampp和wordpress在Centos7上的搭建與使用,對此有需要的朋友可以學(xué)習(xí)下。2018-02-02
Ubuntu系統(tǒng)下用Crontab命令定時執(zhí)行PHP文件詳解
這篇文章主要給大家介紹了在Ubuntu系統(tǒng)下用Crontab命令定時執(zhí)行PHP文件的相關(guān)資料,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-06-06
Ubuntu Server 16.04安裝MySQL設(shè)置遠(yuǎn)程訪問出現(xiàn)問題的完美解決方案(error:10061)
Ubuntu 16.04安裝MySQL及需要其他主機(jī)遠(yuǎn)程連接MySQL時的設(shè)置問題。在安裝過程中會出現(xiàn)各種奇葩問題,下面小編給大家?guī)砹薝buntu Server 16.04安裝MySQL設(shè)置遠(yuǎn)程訪問出現(xiàn)問題的完美解決方案(error:10061),一起看看吧2016-10-10
Linux網(wǎng)絡(luò)配置與端口監(jiān)聽的實戰(zhàn)指南
做開發(fā)和運維的同學(xué),幾乎每天都會和網(wǎng)絡(luò)打交道:部署服務(wù)后端口不通、服務(wù)器IP配置異常、接口調(diào)用失敗、防火墻攔截請求,所以本文匯總了IP查看、DNS配置、端口監(jiān)聽、連通性測試、防火墻放行的實操技巧,需要的朋友可以參考下2026-02-02

