linux 第三章 檔案操作

2021-10-03 02:03:29 字數 2064 閱讀 4683

1、生產任意大小的檔案

[root@localhost dd_test]#

[root@localhost dd_test]# dd if=/dev/zero of=junk.data bs=1k count=10

10+0 records in

10+0 records out

10240 bytes (10 kb) copied, 0.00137023 s, 7.5 mb/s

2、檔案系統相關測試

[ -f $file_var ]: 給定的變數包含正常的檔案路徑或檔名,則返回真

[ -d $var ]: 給定的變數是目錄,則返回真。

[ -e $var ]: 給定的變數包含的檔案存在,則返回真。

[ [ -z $str1 ]]: 如果str1包含的是空字串,則返回真。

[ [ -n $str1 ]]: 如果str1包含的是非空字串,則返回真。

-gt: 大於

-lt: 小於

-ge: 大於或等於.

-le: 小於或等於.

3、檔案許可權

[root@localhost program_test]# chmod 777 cnts.sh

4、批量生成任意大小的檔案

[root@localhost touch_more]# cat create_morefile.sh

#!/bin/bash

for name in .txt

dotouch $name

dd if=/dev/zero of=$name bs=1k count=1

done

5、生成符號鏈結檔案

[root@localhost touch_more]# ln -s 100.txt 100_symbol.txt

[root@localhost touch_more]# ll -al 100*

lrwxrwxrwx. 1 root root    7 jan  2 00:24 100_symbol.txt -> 100.txt

-rw-r--r--. 1 root root 1024 jan  2 00:22 100.txt

查詢符號鏈結的檔案

方法一:

[root@localhost touch_more]# ls -al | grep '^l' | awk ''   //特徵標記,以l開頭。

100_symbol.txt

方法二:

[root@localhost touch_more]# find ./ -type l

./100_symbol.txt

列印符號鏈結指向檔案的名稱:

[root@localhost touch_more]# ls -al 100_symbol.txt | awk ''

100.txt

6、遍歷檔案,分型別統計檔案

[root@localhost touch_more]# cat filestat.sh

#!/bin/bash

if [ $# -ne 1 ];

then

echo $0 basepath;

exit 1

fipath=$1

declare -a statarray;

while read line;

doftype=$(file -b "$line")

let statarray["$ftype"]++;

done < <(find $path -type f -print)  //以子程序統計檔名

echo ***************====file types and counts ***************

for ftype in "$"; //陣列表

doecho $ftype : $

done

6、實時**不斷增長的檔案

[root@localhost touch_more]# tail -f filestat.sh

7、目錄切換

[root@localhost program_test]# cd -

/home/yxx/program_test/touch_more

Linux程式設計之 第三章 檔案操作

本篇主要是針對linux中的檔案 目錄以及相關操作。主要介紹系統呼叫和標準i o庫。linux中,一切都是以檔案的形式來表示的,包括一些硬體裝置。大多數情況下,只需要使用五個基本的函式 open close read write 和ioctl。目錄也是檔案,它用來儲存其他檔案的節點號 inode 和...

第三章 檔案系統操作

在tango庫中,檔案和目錄儲存單位通常用filepath例項來描述。建立乙個filepath很簡單,用char提供構造器。檔案路徑不包含ansi字元,而採用utf 8編碼。如下例 auto path new filepath name 建立一檔案和資料夾需要區分開,建立檔案用path.create...

第三章 檔案I O

include int open const char pathname,int oflag,mode t mode 成功返回檔案描述符,出錯返回 1 oflag 可多選 o rdonly 唯讀 o wronly 只寫 o rdwr 讀 寫 mode o creat 檔案不存在則建立 o excl ...