一鍵拖動去除文件夾及文件名稱的空格

經常會碰見文件夾,以及其中文件命名有空格的情況:
在這里插入圖片描述
這些空格對有些代碼程序不友好,做了一個一鍵拖動去除文件名稱空格
只用把文件夾或者多個文件拖動到bat代碼上就可以一鍵搞定
分為兩個文件,需要放在一個目錄下:
replace_spaces.py

import os
import sysdef replace_spaces_with_underscore(path):"""遞歸遍歷文件夾或處理單個文件,將文件/文件夾名中的空格替換為下劃線"""# 如果是文件,直接處理if os.path.isfile(path):root = os.path.dirname(path)name = os.path.basename(path)if ' ' in name:new_name = name.replace(' ', '_')src = pathdst = os.path.join(root, new_name)os.rename(src, dst)print(f"文件重命名: {src} -> {dst}")return# 如果是文件夾,遞歸處理# 先處理子目錄,防止重命名后路徑改變導致遍歷錯誤for root, dirs, files in os.walk(path, topdown=False):# 重命名文件for name in files:if ' ' in name:new_name = name.replace(' ', '_')src = os.path.join(root, name)dst = os.path.join(root, new_name)os.rename(src, dst)print(f"文件重命名: {src} -> {dst}")# 重命名當前目錄for name in dirs:if ' ' in name:new_name = name.replace(' ', '_')src = os.path.join(root, name)dst = os.path.join(root, new_name)os.rename(src, dst)print(f"目錄重命名: {src} -> {dst}")if __name__ == "__main__":if len(sys.argv) < 2:print("請提供至少一個文件或文件夾路徑")print("用法: python replace_spaces.py [文件/文件夾路徑1] [文件/文件夾路徑2] ...")sys.exit(1)# 處理所有傳入的路徑for path in sys.argv[1:]:if not os.path.exists(path):print(f"警告: 路徑不存在 - {path}")continueprint(f"開始處理: {path}")replace_spaces_with_underscore(path)print("所有空格替換完成!")# 暫停以查看結果(在批處理中運行時)input("按任意鍵繼續...")

replace_spaces.bat

@echo off
echo 開始處理文件和文件夾...
echo.:: 檢查是否有參數(拖放的文件/文件夾)
if "%~1"=="" (echo 請將文件或文件夾拖放到本批處理文件上pauseexit /b 1
):: 獲取Python腳本的路徑(假設與批處理文件在同一目錄)
set "SCRIPT_DIR=%~dp0"
set "PYTHON_SCRIPT=%SCRIPT_DIR%replace_spaces.py":: 檢查Python腳本是否存在
if not exist "%PYTHON_SCRIPT%" (echo 錯誤: 未找到Python腳本 - %PYTHON_SCRIPT%echo 請確保replace_spaces.py與本批處理文件在同一目錄pauseexit /b 1
):: 檢查Python是否已安裝
python --version >nul 2>&1
if %errorlevel% neq 0 (echo 錯誤: 未找到Python環境echo 請先安裝Python并確保已添加到系統PATHpauseexit /b 1
):: 調用Python處理所有拖放的文件/文件夾
python "%PYTHON_SCRIPT%" %*:: 處理完成
echo.
echo 處理完成!
pause

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/96435.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/96435.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/96435.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Roo Code:用自然語言編程的VS Code擴展

在編程的世界里&#xff0c;常常需要記憶各種復雜的命令和語法&#xff0c;與機器進行“對話”。但 如果使用Roo Code&#xff0c;就可以讓編程交流變得像日常對話一樣簡單自然。用自然語言“打字”交流 Roo Code的核心設計理念是理解自然語言。這意味著&#xff0c;無需掌握任…

window顯示驅動開發—視頻呈現網絡簡介

視頻呈現網絡 (VidPN) 管理器是 DirectX 圖形內核子系統 (Dxgkrnl.sys) 的組件&#xff0c;負責管理連接到顯示適配器的監視器和其他顯示設備的集合。 VidPN 經理的職責包括&#xff1a;響應熱插拔和拔下監視器。當連接的監視器集更改時&#xff0c;維護和更新一組可用的顯示模…

安卓13_ROM修改定制化-----打開攝像頭調用相機功能 實現無人直播

無人直播功能的實現而修改手機固件,讓打開攝像頭時默認啟動相機功能,需要理解安卓系統中攝像頭調用的流程 ,而相機應用是通過綁定該服務實現功能的。 通過博文了解?????? 1??????-----了解修改無人直播功能實現的核心原理 2??????-----修改rom 實現更改…

系統架構設計師——【2024年上半年案例題】真題模擬與解析(二)

系統架構設計師——【2024年上半年案例題】真題模擬與解析&#xff08;二&#xff09;試題三&#xff1a;微服務架構與緩存策略 題目背景&#xff1a; 某電商公司計劃將其單體架構的系統重構為微服務架構&#xff0c;以應對日益增長的業務復雜性和用戶并發請求。新系統劃分為用…

加固筆記本是什么意思?加固筆記本圖片

在現代信息化社會中&#xff0c;筆記本電腦已經成為人們學習、辦公和娛樂的必備工具。然而&#xff0c;我們常見的筆記本大多用于相對穩定、舒適的環境中&#xff0c;強調的是輕薄、便攜和性能。但在一些極端復雜的行業和場景中&#xff0c;普通筆記本往往難以勝任。比如沙漠勘…

CSS高級技巧---精靈圖、字體圖標、布局技巧

1、精靈圖1&#xff09;原理核心原理&#xff1a;將網頁中的一些小背景圖像整合到一張大圖中&#xff0c;這樣服務器只需要一次請求就可以了。精靈技術的目的&#xff1a;為了有效減少服務器接收和發送請求的次數&#xff0c;提高頁面的加載速度。2&#xff09;使用使用精靈圖核…

【CMake】環境變量

目錄 一.環境變量簡單介紹 1.1.示例1——設置與清除 1.2.示例2——全局唯一性和全局可見性 1.3.示例3 1.4.示例4 1.5.示例5 一.環境變量簡單介紹 什么是環境變量&#xff1f; 我們看看官網是怎么說環境變量的&#xff1a;cmake-language(7) — CMake 4.1.1 Documentation…

Mysql雜志(十四)——Mysql邏輯架構

Mysql邏輯架構 這個圖相信大家并不陌生&#xff0c;這個就是mysql的邏輯結構圖下面是主包讓AI生成的翻譯后的邏輯結構圖&#xff1a; 我們先來看看各個部分的作用是什么 第一層&#xff1a;客戶端連接層 (Client Layer) 這一層負責處理所有客戶端連接到服務器的請求。責任就…

Git 版本回退與撤銷修改

作為版本控制管理器&#xff0c;Git應當具備版本回退等一系列功能——它的應用場景也很常見&#xff0c;當你在工作區開發時&#xff0c;忽然發現&#xff1a;怎么我這版本寫的代碼還不如上一版本好&#xff1f;這時&#xff0c;版本回退功能就派上用場了。一.版本回退1.概覽首…

學習日記-JS+DOM-day54-9.12

1.javascript基本說明知識點核心內容重點JavaScript基礎控制HTML內容與屬性&#xff0c;實現動態行為&#xff08;如開燈/關燈效果&#xff09;src屬性路徑修正&#xff08;./與../的區別&#xff09;前端三要素HTML&#xff08;內容&#xff09;、CSS&#xff08;樣式&#xf…

使用tree命令導出文件夾/文件的目錄樹( Windows 和 macOS)

你可以在終端&#xff08;命令提示符&#xff09;中使用 tree 命令來清晰直觀地查看和導出文件夾的目錄結構。下面我會詳細告訴你如何在 Windows 和 macOS 上使用它。 &#x1f5a5;? tree 命令基本用法 tree 命令的核心作用是以樹狀圖的形式展示指定路徑下的目錄和文件結構。…

GrapeCity Documents V8.0 Update2 重磅發布:性能飛躍、AI 賦能與文檔處理全流程升級

作為葡萄城旗下服務端文檔組件庫&#xff0c;GrapeCity Documents&#xff08;簡稱"GcDocs"&#xff09;憑借跨平臺、高兼容的優勢&#xff0c;已成為 眾多開發者構建文檔生成、編輯、轉換與管理系統的首選。 近日&#xff0c;GcDocs 迎來 V8.0 Update2 版本更新&am…

水質在線監測系統御控物聯網解決方案

一、行業背景與需求痛點水質安全是飲用水供應、工業生產、生態保護的核心要素。隨著《水污染防治行動計劃》的深入實施&#xff0c;傳統水質監測方式面臨三大挑戰&#xff1a;時效性不足&#xff1a;人工采樣-實驗室分析周期長達24-72小時&#xff0c;難以實時捕捉污染事件&…

【完整源碼+數據集+部署教程】倉庫物品分類檢測圖像分割系統源碼和數據集:改進yolo11-convnextv2

背景意義 研究背景與意義 隨著現代物流和倉儲管理的快速發展&#xff0c;物品分類與檢測技術在提高倉庫運營效率、降低人工成本方面發揮著越來越重要的作用。傳統的物品管理方式往往依賴人工識別和分類&#xff0c;效率低下且容易出錯。為了解決這一問題&#xff0c;基于計算機…

瀏覽器穩定性提升之路:線上崩潰率優化中的 Return 與 CHECK 之爭

一、前言在大型 C 工程&#xff08;例如 Chrome 瀏覽器內核&#xff09;中&#xff0c;開發者經常會遇到這樣的選擇&#xff1a; 到底應該在關鍵點使用 CHECK 直接崩潰&#xff0c;還是使用 return、LOG 記錄錯誤然后繼續執行&#xff1f;這看似只是一個代碼風格問題&#xff0…

【數據結構與算法Trip第3站】雙指針

我們來詳細講解一下算法中非常常用且重要的技巧——雙指針法。 這是一個概念清晰但應用極其廣泛的技術&#xff0c;掌握它能幫助你高效解決許多問題。 一、什么是雙指針法&#xff1f; 核心思想&#xff1a;顧名思義&#xff0c;就是在遍歷對象&#xff08;通常是數組或鏈表&am…

時序數據庫選型指南:基于大數據視角的IoTDB應用優勢分析詳解!

目錄 一、時序數據庫選型的基本原則 1.1 數據特征與需求分析 1.1.1 數據規模與寫入負載 1.1.2 查詢需求 1.1.3 數據保留與歸檔策略 1.1.4 系統擴展性與高可用性 1.2 技術架構與系統性能評估 1.2.1 寫入性能 1.2.2 查詢性能 1.2.3 數據壓縮能力 1.2.4 高可用性與災備…

緩存三大劫攻防戰:穿透、擊穿、雪崩的Java實戰防御體系(三)

第三部分&#xff1a;緩存雪崩——大量key失效引發的“系統性崩潰” 緩存雪崩的本質是“大量緩存key在同一時間失效&#xff0c;或緩存集群整體故障”&#xff0c;導致請求全量穿透至DB&#xff0c;引發“系統性崩潰”。 案例4&#xff1a;電商首頁的“批量過期”災難 故障現場…

解決docker配置了鏡像源但還會拉取官方鏡像源的問題

&#x1f3d3;我們有時候雖然配置了Docker國內鏡像源&#xff0c;但是還是會繞過去請求官方鏡像源&#xff08;docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded&#xff09;&#xff0c;現在我們就來解決一…

R語言水文、水環境模型優化:從最速上升法、嶺分析到貝葉斯優化與異方差處理,涵蓋采樣設計、代理模型與快速率定等

在水利工程、環境治理、生態保護、機械設計與航天航空等現代工業與科學領域&#xff0c;數學模型已成為不可或缺的核心分析、預測與決策工具。然而&#xff0c;隨著系統復雜性的日益增長&#xff0c;模型構建的精確性、參數率定的效率以及不確定性量化的重要性被提到了前所未有…