『壹』 看到書上介紹unix操作系統文件類型的設備文件,裡面說把設備文件分為字元設備文件和塊設備文件,這樣
在UNIX系統中文件分為四種:
1普通文件(ordinary file),
分為: (1) 文本文件
(2) 二進制文件
2 目錄文件(directory)
3 特殊文件(special file),分為:
(1)塊設備文件
(2)字元設備文件
4 符號鏈接文件
(symbolic links)
其中特殊文件也稱設備文件,代表著某種設備,一般放在/dev目錄下,如/dev/cd0表示光碟機。
特殊文件分為塊設備文件和字元設備文件,塊設備文件以區塊為輸入輸出單元,如磁碟;
字元設備文件是以字元作為輸入輸出單元,如串口。符號連接文件包含一指針,這指針會指向文件的所在。
字元設備特殊文件進行I/O操作不經過操作系統的緩沖區,而塊設備特殊文件用來同外設進行定長的包傳輸。字元特殊文件與外設進行I/o操作時每次只傳輸一個字元。而對於塊設備特殊文件來說,它用了cache機制,在外設和內存之間一次可以傳送一整塊數據。
不同的傳輸方式當然可以實現減少時間開銷了!
希望對您有幫助!
『貳』 如何在linux下查找文件內容包含某個特定字元串的文件
使用grep可以查找包含指定字元串的文件
格式:
grep 「要查找的字元串」 文件名
例子:
grep "192.168.0.1" /etc
文件名可以使用基本正則表達式(BRE),例如, 查找test目錄下的所有文件,是否包含www.tycode.com字元串。
grep 「www.tycode.com」 /root/zzh/test/*
幾個常用的查詢指令:
1、查找時不區分字元串的大小寫
grep -i 「查找的字元串」 文件名
2、查找時使用正則表達式,匹配符合的字元串
grep -e 「正則表達式」 文件名
3、查找不匹配指定字元串的行:
grep -v 「被查找的字元串」 文件名
4、查找時顯示被查找字元串所在的行數
grep -n 「查找的字元串」 文件名
『叄』 如何建立和刪除特殊字元的文件夾
Windows的文件和文件夾的名稱不能包含特殊字元,在圖形界面輸入包含這些特殊字元的話會提示出錯,但是在命令行下卻能夠建立成功(該死的microsoft)。
例如:在命令行下建立這樣的一個目錄:
md 「t \」
這樣的在windows界面不能刪除改目錄很是煩人,有人會想那我同樣用rd刪除不就可以了不錯是這樣的,但是如果在這個目錄下放幾個這樣的目錄就比較麻煩了,有些同志會想那有什麽麻煩的同樣用rd刪除不就可以了,想的不錯不過如過遇到文件名很長的特殊字元也很長這樣用這種方法就比較累了,關鍵問題是這個目錄的名稱總是寫不對,我用復制粘貼的方法也不行,試了N久只好放棄了,後來找了另一種取巧的方法與大家分享:
可以用dir /X 列出該目錄的8.3格式名,然後通過rename命令修改,如果有深層次的文件夾可依次修改,然後到windows界面下delete即可。
例如:剛才md 「t \」創建的目錄用dir /X列出
2005-12-14 15:09 <DIR> T03A5~1 t
8.3格式的名稱
然後rename T03A5~1 aa 這樣就把這個目錄改成了aa同樣如果它下面還有這樣類似的文件夾名稱也可以這樣修改,改完後從windows界面刪除即可。
『肆』 linux 字元編碼文件存在哪
查看文件編碼
在Linux中查看文件編碼可以通過以下幾種方式:
1.在Vim中可以直接查看文件編碼
:set fileencoding
即可顯示文件編碼格式。
如果你只是想查看其它編碼格式的文件或者想解決用Vim查看文件亂碼的問題,那麼你可以在
~/.vimrc 文件中添加以下內容:
set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
這樣,就可以讓vim自動識別文件編碼(可以自動識別UTF-8或者GBK編碼的文件),其實就是依照 fileencodings提供的編碼列表嘗試,如果沒有找到合適的編碼,就用latin-1(ASCII)編碼打開。
2. enca (如果你的系統中沒有安裝這個命令,可以用sudo yum install -y enca 安裝 )查看文件編碼
$ enca filename
filename: Universal transformation format 8 bits; UTF-8
CRLF line terminators
需要說明一點的是,enca對某些GBK編碼的文件識別的不是很好,識別時會出現:
Unrecognized encoding
文件編碼轉換
1.在Vim中直接進行轉換文件編碼,比如將一個文件轉換成utf-8格式
:set fileencoding=utf-8
2. enconv 轉換文件編碼,比如要將一個GBK編碼的文件轉換成UTF-8編碼,操作如下
enconv -L zh_CN -x UTF-8 filename
3. iconv 轉換,iconv的命令格式如下:
iconv -f encoding -t encoding inputfile
比如將一個UTF-8 編碼的文件轉換成GBK編碼
iconv -f UTF-8 -t GBK file1 -o file2
查看文件編碼file命令
file ip.txt ip.txt: UTF-8 Unicode text, with escape sequences
一、利用iconv命令進行編碼轉換文件內容編碼轉換 iconv命令用於轉換指定文件的編碼,默認輸出到標准輸出設備,亦可指定輸出文件。 用法: iconv [選項...] [文件...] 有如下選項可用: 輸入/輸出格式規范: -f, --from-code=名稱 原始文本編碼 -t, --to-code=名稱 輸出編碼 信息: -l, --list 列舉所有已知的字元集 輸出控制: -c 從輸出中忽略無效的字元 -o, --output=FILE 輸出文件 -s, --silent 關閉警告 --verbose 列印進度信息 -?, --help 給出該系統求助列表 --usage 給出簡要的用法信息 -V, --version 列印程序版本號 例子: iconv -f utf-8 -t gb2312 aaa.txt >bbb.txt 這個命令讀取aaa.txt文件,從utf-8編碼轉換為gb2312編碼,其輸出定向到bbb.txt文件。
二、文件名編碼轉換
因為現在用linux,原來在windows里的文件都是用GBK編碼的。所以到linux下是亂碼,文件內容可以用iconv來轉換可是好多中文的文件名還是亂碼,找到個可以轉換文件名編碼的命令,就是convmv。
convmv命令詳細參數 例如
convmv -f GBK -t UTF-8 *.mp3
不過這個命令不會直正的轉換,你可以看到轉換前後的對比。如果要直正的轉換要加上參數 --notest
convmv -f GBK -t UTF-8 --notest *.mp3
-f 參數是指出轉換前的編碼,-t 是轉換後的編碼。這個千萬不要弄錯了。不然可能還是亂碼哦。還有一個參數很有用。就是 -r 這個表示遞歸轉換當前目錄下的所有子目錄。
* 需要安裝 convmv-1.10-1.el5.noarch.rpm
三、 更好的傻瓜型命令行工具enca,它不但能智能的識別文件的編碼,而且還支持成批轉換。 1.安裝
$sudo apt-get install enca
2.查看當前文件編碼
enca -L zh_CN ip.txt Simplified Chinese National Standard; GB2312 Surrounded by/intermixed with non-text data
3.轉換 命令格式如下
$enca -L 當前語言 -x 目標編碼 文件名
例如要把當前目錄下的所有文件都轉成utf-8
enca -L zh_CN -x utf-8 *
檢查文件的編碼enca -L zh_CN file
將文件編碼轉換為"UTF-8"編碼 enca -L zh_CN -x UTF-8 file
如果不想覆蓋原文件可以這樣 enca -L zh_CN -x UTF-8 < file1 > file2
『伍』 如何查找目錄下包含某個字元串的所有文件
文本編輯器工具,比如sublime 進去ctrl+shift+f 整個目錄搜索 ,
左側是你的當前目錄內的所有文件,*.*表示所有文件名的所有格式你也可以是設置比如查找txt文件