簡體   English   中英

創建/查找批處理腳本,該腳本在目錄和子目錄中執行“查找和替換”,適用於具有不同名稱的 excel 文件

[英]Create/find batch script which performs a 'find and replace' within a directory and sub-directories, for excel files with varied names

我在單個目錄下的不同層子文件夾中包含許多文件(Excel/CSV)。 許多文件包含一個帶有公共文本字符串的單元格,所有這些都需要更新為新字符串。 這些文件都有不同的名稱。 創建一個(最好是批處理)腳本來搜索給定文本字符串的整個目錄(包括子目錄),用新字符串替換所有實例,並將其他所有內容保留在原處,這有多困難。

我是腳本的新手,我一直在搜索該站點,但沒有找到適合我的解決方案。 我想強調的是,由於安全措施,我無法下載、安裝或運行第三方軟件,因此像 FART 這樣的應用程序已被淘汰。 有沒有人能夠提供和輸入創建這樣的東西,或者將我鏈接到這樣一個已經存在的腳本? 提前致謝!!

使用純批處理進行穩健的文本編輯既困難又緩慢。

除非您的管理技術人員禁用了 CSCRIPT,否則您可以使用我的JREPL.BAT - 混合 JScript/批處理文本處理實用程序。

無需下載或安裝過程。 JREPL.BAT 是純腳本,可​​以在 XP 以后的任何 Windows 機器上本地運行。 只需將腳本復制到本地機器上名為 JREPL.BAT 的新文件中即可。

擁有自己的副本后,您只需要從命令控制台運行以下命令即可:

for /r "c:\your\root\path" %F in (*.csv) do @jrepl "search string" "replace string" /L /F "%F" /O -

我使用 /L 開關將搜索視為文字。 您可能想要刪除 /L 開關並改為執行正則表達式搜索。

如果將命令放在另一個腳本中,則需要將百分比加倍並使用 CALL JREPL。

@echo off
for /r "c:\your\root\path" %%F in (*.csv) do call jrepl "search string" "replace string" /L /F "%%F" /O -

從控制台提示符發出以下命令以獲取完整文檔:

jrepl /? | more

我用一個大的緩沖區高度配置了我的控制台窗口,這樣我就可以向后滾動以查看先前的輸出,因此我不需要| more | more的時候我幫忙看一下。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM