簡體   English   中英

在批處理腳本中提取路徑的一部分

[英]Extract part of a path in batch script

我有一個批處理腳本,輸入內容為/home/home1/home2/home3/

我需要提取部分文件路徑,例如/home2/home3 我該如何實現?

謝謝您的幫助!

未經測試:

@echo off

set "p=/home/home1/home2/home3/"
set "p=%p:/=";"%"

setlocal ENABLEDELAYEDEXPANSION
for %%a in ("%p%") do (
    if "%%~a" neq "" set "butlast=!last!"
    if "%%~a" neq "" set "last=%%~a"

)

echo %butlast%/%last%

為/ f“令牌= 1-4 delims = /”('echo / home / home1 / home2 / home3 /')中的%% a執行@echo / %% b / %% c

令牌告訴要吐出多少變量,而delims告訴要拆分什么。 %% a是第一個標記,由於被告知生成4,因此它將計入一個d。

您可能會將路徑作為變量,可以將其替換為示例中的路徑,但是您可能需要使用延遲擴展

暫無
暫無

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

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