如果使用svn的命令列,例如在linux下的終端中使用,
svn的新增命令是svn add,刪除命令是svn del,但是缺乏批量的操作,如果我在資源管理器中,手動新增了好多個資料夾下的各種各樣的檔案,然後我想一次性add,svn就力不從心了,即使使用svn add *,也會因為新添檔案的父目錄已經被新增進版本庫而忽略父目錄下的所有檔案。手動刪除了很多檔案,想要一次性del時,也會遇到類似的情況。
通過研究,發現以下的命令能夠解決這兩個問題:
批量刪除檔案——
svn status|grep ! |awk ''|xargs svn del
語句釋義是:首先svn status檢視svn狀態,列出所有改動,打!號的是已經刪除的檔案但是還未標記成從庫中除去,grep !將這些檔案單獨抽離出來,
此時如果不執行後面的語句,呈現的內容應該是類似
再用awk ''將抽離出來的文字結果處理,留下每一行的第二段文字,即後面的檔名,
此處必須注意,svn status|grep !和後面的語句|awk ''|xargs svn del之間,必須有乙個空格,否則終端還是會認為這個!號是特殊符號
此時呈現的結果應該是
這個時候就可以直接遞交給svn del命令了,使用xargs這個引數構造命令,將每一行的文字作為引數提供給svn del,結果就是所有列出的檔案都執行了一遍del了。
批量新增檔案——
幾乎一樣,不同的是svn標記的符號不一養,使用的是問號!
svn status|grep ? |awk ''|xargs svn add
Linux命令列批量刪除檔案(目錄)
快速 批量刪除檔案或目錄 1 1.快速刪除大資料夾 注意目錄後的結束符 對於含有海量檔案的目錄,不能直接rm rf刪除,這樣效率很慢 rsync a delete blank test 使用空資料夾 blank 覆蓋原資料夾 test mkdir empty dir rsync a delete e...
詳解Linux上svn命令列批量操作
詳解linux上svn命令列批量操作 雖然說git很好,大多數時候我也是使用git,但是有時候因為一些原因,不得不使用svn,而在linux上使用svn是沒有像windows上的tortoisesvn的軟體的 網上有說有類似的,但是折騰了很久仍然沒有成功 所以直接來命令列吧。我們直接安裝svn就好,...
批量刪除svn標誌
只是清理.svn目錄的話,當然可以通過svn工具自帶的匯出功能。記錄下主要還是這個批處理可以遍歷所有目錄中的特定資料夾。程式 如下 echo off start 啟動過程,切換目錄 set pwd cd cd 1 echo 工作目錄是 chdir input 獲取輸入,根據輸入進行處理 set so...