1. linux下使用split命令分割文件且文件號從001開始
1、Linux里切割大文件的命令如下:
split[OPTION][INPUT[PREFIX]]
選雹孝項如下:
-a :指定後綴長度
-b:每個數瞎文件多少薯肆空位元組
-d:使用數字後綴而不是字母
-l:指定每個文件的行數
2、比如我想讓後綴長度為 2,即 -a 2。用數字後綴 -d。每個文件 10M,即 -b 10m。命令可以設計如下:
split-a2-d-b10m/var/lib/mysql/general.lognowamagic
會在 /root 文件夾下生成下面的切割文件:
nowamagic00
nowamagic01
nowamagic02
nowamagic03
nowamagic04
nowamagic05
nowamagic06
nowamagic07
nowamagic08
nowamagic09
2. linux文件split切割數據慢的問題
網速太慢。Linux是一種自由和開放源代碼的滾陵類UNIX操作汪備系統。,其對網速要求很高,最低困備毀網速為10MB/s,若在低於10MB/s的環境下使用就會導致文件split切割數據慢,更換一個良好的網路環境即可解決。
3. linux 按天壓縮並切割日誌
1、linux 自帶的 logrotate 命令
2、定義切割文件相關信息
/var/log/nginx/*.log {
daily #按天打包
rotate 180 #保存周期為180以內的,超過180天的則刪除
missingok
notifempty
dateext
compress
nodelaycompress
sharedscripts
postrotate
/etc/init.d/nginx reload
endscript
}
3、crontab 設置一個定時任務
59 23 * * * /usr/sbin/logrotate -f /var/logrotate/nginx >> /tmp/logrotate.log
4. linux切分文件命令(split)和合並文件
linux有rz和sz命令,可以讓我讓納運們在window和本地虛擬機之間傳輸文件,但是有個麻煩的事情就是不能傳輸大於4G的文件
如果是傳送到linux,可以使用坦梁FileZilla軟體,那麼從linux下拉到windows怎麼解決呢,那就是使用split將文件拆分成小於4G的文件
上面講解茄廳了拆分,下面講講合並tar包
5. linux 如何將一個大文件分成幾個小文件
1、連接上相應的linux主機,進入到等待輸入shell指令的linux命令行狀態下。
6. linux文件拆分命令
Linux中分割文件用split命令,這個命令可以將一個文件分割成指定大小的多個文件,split命令的用法是:
split -b 分割的大小 需要分割的文件名 分割後文件的前導文字
這里解釋一下,-b參數表示按照文件大小單位來進行分割(split命令還有一個-l參數,是根據文本文件的行數來進行分割,這個-b參數是根據大小來分割的),-b參數後面跟的是分割的依據——文件大小,文件大小的單位可以是b、k、m,比如300m。「分割後文件的前導文字」是幹嘛的呢,其實是在分割後的文件名前面加上一個前綴。下面是一個例子,就假設需要分割的文件是/root/bigfile:
split -b 50m /root/bigfile chunk
這條命令產生的分割文件可能是:chunkaa、chunkab、chunkac,看到前導文字的作用了吧。
那麼如何將分割後的文件再合並起來呢,還是接著上面的那個例子,用下面這條命令就可以了(先用cd /root切換到/root目錄):
cat chunk* >> bigfile
7. linux下將文件按行分割的命令
1)按2行切割 -l 2
2)指定切割後的文件前綴名 data_
3)指定切割後的文源兄塌件後綴名為數字 -d
4)指定切割後的文件後綴名數字的長度 -a 4,即位寬(10進制),這里長度可根據切割出來的文件有多少估算,到底拆分為幾個文件,由總行數,和每個文件的行數決定,不用指定。
如果為-a 4文件的後綴數字從0000開始計算,依次為0001,0002,0003,0004
split -l 2 data.log -d -a 4 data_
將文件data.log進行拆分,每個塵燃文件2行,如果文件總共有7行,則分為data_0000,雹圓data_0001,data_0002,data_0003
8. 如何將linux文件分割為幾個
Linux中分割文件用split命令,這個命令可以將一個文件分割成指定大小的多個文件,split命令的用法是:
split -b 分割的大小 需要分割的文件名 分割後文件的前導文字
這里解釋一下,-b參數表示按照文件大小單位來進行分割(split命令還有一個-l參數,是根據文本文件的行數來進行分割,這個-b參數是根據大小來分割的),-b參數後面跟的是分割的依據——文件大小,文件大小的單位可以是b、k、m,比如300m。「分割後文件的前導文字」是幹嘛的呢,其實是在分割後的文件名前面加上一個前綴。下面是一個例子,就假設需要分割的文件是/root/bigfile:
split -b 50m /root/bigfile chunk
這條命令產生的分割文件可能是:chunkaa、chunkab、chunkac,看到前導文字的作用了吧。
那麼如何將分割後的文件再合並起來呢,還是接著上面的那個例子,用下面這條命令就可以了(先用cd /root切換到/root目錄):
cat chunk* >> bigfile
9. Linux下使用cronolog切割伺服器日誌文件的方法
Linux下運行的Web伺服器Apache,默認日誌文件是不分割的,一個整文件既不易於管理,也不易於分析統計。安裝cronolog後,可以將日誌文件按時間分割,易於管理和分析。
cronolog安裝配置非常簡單,下載後只需要輸入幾個命令即可完成。
1、下載(最新版本)
# wget http://cronolog.org/download/cronolog-1.6.2.tar.gz
2、解壓縮
# tar zxvf cronolog-1.6.2.tar.gz
3、進入cronolog安裝文件所在目錄
# cd cronolog-1.6.2
4、運行安裝
# ./configure
# make
# make install
5、查看cronolog安裝後所在目錄(驗證安裝是否成功)
# which cronolog
一般情況下顯示為:/usr/local/sbin/cronolog
整個安裝過程結束,下面需要把日誌的格式配置一下:
1、虛擬主機配置文件 httpd-vhosts.conf
將Web日誌設置 CustomLog 修改為以下格式
CustomLog "|/usr/local/sbin/cronolog /www/logs/example_%Y%m%d.log" combined
當然,錯誤日誌設置 ErrorLog 也可以利用 cronolog 分割,設置為
ErrorLog "|/usr/local/sbin/cronolog /www/logs/error_%Y%m%d.log"
2、如果伺服器上只有一個站點(當然這種情況比較少),直接按上面所說格式修改 httpd.conf 文件日誌設置部分。
說明:
綠色部分 為 cronolog 安裝後所在位置,系統版本不同可能位置不完全一樣,以 which 命令查看到的位置為准;
藍色部分 為設置的日誌文件所在位置,根據需要修改;
紅色部分 為設置的日誌文件標識性字元,根據需要修改;
%Y%m%d 為日誌文件分割方式,例子中為「年月日」,也可以修改成自己需要的。
修改httpd.conf文件:
這個文件在我的電腦上是在 /etc/httpd/conf/httpd.conf 不同的伺服器 應該是不一樣的
在最後加上
# ServerAdmin [email protected]
# DocumentRoot /www/docs/mmy-host.example.com
# ServerName mmy-host.example.com
ErrorLog /data/logs/apache/webapps.wps.cn-error_log
CustomLog "|/usr/local/sbin/cronolog /data/logs/apache/%Y%m%d/access_log.%H" combined
#這個保證了每天一個文件夾 文件夾下 每個小時產生一個log
#CustomLog "|/usr/local/sbin/cronolog /data/logs/apache/%Y%m%%Hdaccess_log" combined
進入到 /etc/init.d/httpd configtest 這樣驗證你的配置文件是否正確
進入到 /etc/init.d/httpd restart 重啟apache 伺服器(不同的'系統應該是不一樣 要自己找到)
用於Tomcat
第一步
將
if [ -z "$CATALINA_OUT" ] ; then
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi
修改為
if [ -z "$CATALINA_OUT" ] ; then
CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out.%Y-%m-%d
fi
第二步
將
touch "$CATALINA_OUT"
改為
#touch "$CATALINA_OUT"
第三步
將
org.apache.catalina.startup.Bootstrap "$@" start
>> "$CATALINA_OUT" 2>&1 &
修改為
org.apache.catalina.startup.Bootstrap "$@" start 2>&1
| /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
重新啟動 Tomcat
service tomcat restart
可以在 Tomcat 的 logs 目錄底下找到以系統日期為結尾的 catalina.out.yyyy-mm-dd 的檔案,這樣子就成功了。
後續就是持續觀察看看是不是每天都有產生一個新的 catalina.out.yyyy-mm-dd 檔案。然後再安排定期刪除這些較舊的 log 檔即可。
10. Linux系統日誌切割-Logrotate
日誌渣伏文件包含了關於系統中發生的事件的有用信息,在排障過程中或者系統性能分析時經常被用到。對於忙碌的伺服器,日誌文件大小會增長極快,伺服器會很快消耗磁碟空間,這成了個問題。除此之外,處理一個單個的龐大日誌文件也常常是件十分棘手的事。
logrotate是個十分有用的工具,它可以自動對日誌進行截斷(或輪循)、壓縮以及刪除舊的嫌梁搏日誌文件。例如,你可以設置logrotate,讓/var/log/foo日誌文件每30天輪循,並刪除超過6個月的日誌。配置完後,logrotate的運作完全自動化,不必進行任何進一步的人為干預。
在Debian或Ubuntu上:
在Fedora,CentOS或RHEL上:
logrotate的配置文件是/etc/logrotate.conf,通常不需要對它進行修改。日誌文件的輪循設置在獨立的配置文件中,它(們)放在/etc/logrotate.d/目錄下。
參數詳解:
上面的模板是通用的,而配置參數則根據你的需求進行調整,不是所有的參數都是必要的。
logrotate可以在任何時候從命令行手動調用。要調用為/etc/lograte.d/下配置的所有日誌調用logrotate:
要為某個特定的配置調用logrotate,執行一次芹祥切割任務測試
即使輪循條件沒有滿足,我們也可以通過使用『-f』選項來強制logrotate輪循日誌文件,『-v』參數提供了詳細的輸出。
防止訪問日誌文件過大
logrotate工具對於防止因龐大的日誌文件而耗盡存儲空間是十分有用的。配置完畢後,進程是全自動的,可以長時間在不需要人為干預下運行。本教程重點關注幾個使用logrotate的幾個基本樣例,你也可以定製它以滿足你的需求。