免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

go語言遞歸查看文件 go語言查詢數(shù)據(jù)庫(kù)

Go語言文件操作

本文主要介紹了Go語言中文件讀寫的相關(guān)操作。

成都創(chuàng)新互聯(lián)專注于呼蘭網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供呼蘭營(yíng)銷型網(wǎng)站建設(shè),呼蘭網(wǎng)站制作、呼蘭網(wǎng)頁設(shè)計(jì)、呼蘭網(wǎng)站官網(wǎng)定制、成都微信小程序服務(wù),打造呼蘭網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供呼蘭網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

文件是什么?

計(jì)算機(jī)中的文件是存儲(chǔ)在外部介質(zhì)(通常是磁盤)上的數(shù)據(jù)集合,文件分為文本文件和二進(jìn)制文件。

os.Open() 函數(shù)能夠打開一個(gè)文件,返回一個(gè) *File 和一個(gè) err 。對(duì)得到的文件實(shí)例調(diào)用 close() 方法能夠關(guān)閉文件。

為了防止文件忘記關(guān)閉,我們通常使用defer注冊(cè)文件關(guān)閉語句。

Read方法定義如下:

它接收一個(gè)字節(jié)切片,返回讀取的字節(jié)數(shù)和可能的具體錯(cuò)誤,讀到文件末尾時(shí)會(huì)返回 0 和 io.EOF 。 舉個(gè)例子:

使用for循環(huán)讀取文件中的所有數(shù)據(jù)。

bufio是在file的基礎(chǔ)上封裝了一層API,支持更多的功能。

io/ioutil 包的 ReadFile 方法能夠讀取完整的文件,只需要將文件名作為參數(shù)傳入。

os.OpenFile() 函數(shù)能夠以指定模式打開文件,從而實(shí)現(xiàn)文件寫入相關(guān)功能。

其中:

name :要打開的文件名 flag :打開文件的模式。 模式有以下幾種:

perm :文件權(quán)限,一個(gè)八進(jìn)制數(shù)。r(讀)04,w(寫)02,x(執(zhí)行)01。

golang怎么逐個(gè)讀取目錄下的所有文件

CFileFindff;CStringszName=dir;if(szName.Right(1)!="\\"){szName+="\\";}szName+="*.*";BOOLres=ff.FindFile(szName);while(res){res=ff.FindNextFile();if(!ff.IsDots())//目錄是文件夾{//如果是一個(gè)子目錄,用遞歸繼續(xù)往深一層找TravelDir(dir+"\\"+ff.GetFileTitle());}elseif(!ff.IsDirectory()!ff.IsDots())//到達(dá)最低層的文件{CStringfileName=ff.GetFileName();}}}ff.Close();//關(guān)閉MessageBox(fileName);

如何做一個(gè)遞歸查找/字符串替換

1. cd /home/www

find . -type f -print0 | xargs -0 sed -i 's/subdomainA.example.com/subdomainB.example.com/g'

UPD。

-print0(GNU只找到)講述,而不是空白找到空字符(\\ 0)作為輸出之間的分隔符找到。這是一個(gè)更安全的選擇,如果你的文件可以包含空格或其它特殊字符。它是-print0找到,如果-(-0是需要在xargs的)或xargs的。

2.

find /home/ CodeGo.net -type f -exec \

sed -i 's/subdomainA\.example\.com/subdomainB.example.com/g' {} +

相較于這里其他的答案,這是簡(jiǎn)單的比大多數(shù)sed的,而不是perl,它是原來的問題問什么。

3.

cd /home/ CodeGo.net find . -type f -print0 |

xargs -0 perl -i.bak -pe 's/subdomainA\.example\.com/subdomainB.example.com/g'

4.

我只是需要這一點(diǎn) CodeGo.net,不滿意的可用實(shí)例的速度。所以,我與我自己的:

cd /var/ CodeGo.net ack-grep -l --print0 subdomainA.example.com | xargs -0 perl -i.bak -pe 's/subdomainA\.example\.com/subdomainB.example.com/g'

ACK-grep的是找到相關(guān)的文件非常有效的。更換?145 000檔案輕而易舉,而其他花了這么長(zhǎng)時(shí)間我不能等到他們完成。

5.

find /home/ CodeGo.net -type f -exec perl -i.bak -pe 's/subdomainA\.example\.com/subdomainB.example.com/g' {} +

找到/-F型將列出/所有文件(及其子目錄)。

該“-exec的”標(biāo)志告訴發(fā)現(xiàn)運(yùn)行在每個(gè)文件中找到。

Perl的i.bak-PE的/ subdomainA。 {} +

運(yùn)行上的文件(許多在該“{}”被替換的文件

在年底的+告訴找建1命令很多

從查找手冊(cè)頁:“行是建立在很多的方式,

xargs的建行。“

它可以實(shí)現(xiàn)你的目標(biāo)xargs的-0,或-print0。

6.

最簡(jiǎn)單的解決方案是,即:

sed -i '' -e 's/subdomainA/subdomainB/g' $(find /home/ CodeGo.net -type f)

注意:-i ''解決問題的OSXsed: 1: "...": invalid command code .注:如果有太多要處理的文件,你會(huì)得到Argument list too long。解決方法-使用find -exec或xargs上述解決方案。

7.

更簡(jiǎn)單的方法是在下面的行

find /home/ CodeGo.net -type f|xargs perl -pi -e 's/subdomainA\.example\.com/subdomainB.example.com/g'

8.

您還可以:

搜索和替換查找和編輯

(那里還設(shè)有一個(gè)測(cè)試模式,通過-t標(biāo)志)

9.

試試這個(gè):

sed -i 's/subdomainA/subdomainB/g' `grep -ril 'subdomainA' *`

10.

更改多個(gè)文件(保存?zhèn)浞莸? BAK):

perl的-P-I-E“S / \\|/ X / G”*

將所有文件在目錄和替換“|”,其中x

所謂的“Perl的pie”(容易的pie)

11.

#!/usr/local/bin/bash -x

find * /home/ CodeGo.net f | while read files

do

sedtest=$(sed -n '/^/,/$/p' "${files}" | sed -n '/subdomainA/p')

if [ "${sedtest}" ]

then

sed s'/subdomainA/subdomainB/'g "${files}" "${files}".tmp

mv "${files}".tmp "${files}"

fi

done

網(wǎng)頁名稱:go語言遞歸查看文件 go語言查詢數(shù)據(jù)庫(kù)
鏈接地址:http://m.newbst.com/article32/dosjgsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷推廣服務(wù)器托管軟件開發(fā)面包屑導(dǎo)航網(wǎng)站排名企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)