如果為了測試程式,需要生成包含隨機資料的檔案時,需要使用指定大小的檔案作為輸入,或者時分割檔案等。建立特定大小的檔案最簡單的方法就是dd命令。
dd命令轉殖給定的輸入內容,然後輸出乙份副本到輸出。stdin、裝置檔案、普通檔案都可以作為dd的輸入;stdout、裝置檔案、普通檔案也都可以作為dd的輸出。
user@ubuntu
:~$ dd if=/dev/zero of=junk.data bs=1m count=1
上述命令會建立乙個1m大小的junk.data檔案。
- if:輸入檔案(input file)
- of:輸出檔案(output file)
- bs:以位元組為單位的大小(block size)
- count:需要複製的塊數,最終檔案大小為 bs*count
快大小可以使用通用的單位來指定,c(1byte)、w(2bytes)、b(512bytes)、k、m、g等。不指定if引數時預設從stdin接收輸入。不指定of缺省會輸出到stdout。另外可以使用dd命令傳輸大量資料來測試記憶體的操作速度。
user@ubuntu:~$ comm a b
column1 column2 column3
...
輸出的第一列包含只出現在a中的行,第二列包含只在b出現的行,第三列包含a和b中相同的行,各列以tab鍵分割。
只有三個選項進行控制,-1用來刪除第一列,-2刪除第二列,-3刪除第三列。
touch可以用來生成空白檔案,如果檔案存在,就會修改檔案的時間戳。
for name in (1...100).txt
do touch $
done
file命令用來輸出檔案的型別資訊,可以輸出檔案的基本資訊。linux中的檔案型別資訊不是由副檔名決定的,而是由檔案頭決定的。file可以方便的檢視:
user@ubuntu
:~$ file test
test:
ascii text
user@ubuntu
:~$ file /usr/bin/bc
/usr/bin/bc:
elf32-bit lsb executable, intel
80386, version 1 (sysv), dynamically linked (uses shared libs), for
gnu/linux
2.6.24, buildid[sha1]=0x16db821a3043f96564c984920984be43465ddfeb, stripped
使用find命令可以配合得到制定目錄下的檔案統計資訊:
#!/bin/bash
if [ $#
-ne1 ];
then
echo
$0 basepath;
fipath=$1
declare -a statarr
while
read line;
do ftype=`file -b "$line"`
let statarr["$ftype"]++;
done
<< (find $path -type f -print)
echo **********== file types and count ***************
for ftype in
"$";
doecho
$ftype : $
done
對於乙個檔案有多個版本時,如果需要檢視各個版本都有哪些變化,那麼使用diff命令可以生成差異檔案。
$ diff -u ver1.txt ver2.txt > ver.patch
上述命令將diff生成的不同點儲存到ver.patc**件中,當使用ver1.txt時就可以得到ver2.txt,使用ver2.txt時就會得到ver1.txt。
dff能以遞迴形式作用於目錄。會對目錄中所有內容生成差異輸出:
-n:將所有缺失檔案視為空白文靜
-a:將所有檔案視為文字檔案
-u:生成一體化輸出
-r:遍歷目錄下的所有檔案
$ patch -p1 ver1.txt
< ver.patch
patching file ver1.txt
上述命令使得ver1.txt檔案與ver2.txt內容完全相同。如果再次執行上述命令,就會恢復ver1.txt檔案到之前的版本。 13 檔案系統
檔案系統 檔案系統是作業系統用於管理磁碟上檔案的方法和資料結構,簡單來說就是磁碟上如何組織檔案的方法 常用的兩種檔案系統ntfs和fat32區別 ntfs fat32 磁碟分割槽容量 2t 32g 單個檔案容量 4g以上 最大4g efs加密 支援 不支援 磁碟配額 支援 不支援ntfs和fat32...
13 檔案I O緩衝
key word 使用者空間緩衝區 核心緩衝區快取記憶體 write 將資料從使用者空間記憶體傳遞到核心空間的緩衝區中,在後續某個時刻,核心會將其從緩衝區中的資料寫入磁碟中。read 核心從磁碟中讀取資料並儲存到核心緩衝區中,read 將從該緩衝區中讀取資料。include int setvbuf ...
python基礎(13) 檔案
檔案的基本方法 可使用函式open,它位於自動匯入的模組io中。1.open函式將檔名作為唯一必不可少的引數,返回乙個可讀取的檔案物件 open a.py a.py mode r encoding cp936 2.如果要寫入檔案,必須通過指定模式來顯式地指出這一點 3.若不存在該檔案,則會產生如下錯...