中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-09 07:36
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已結]如何將當前運行的路徑儲存成變數[尋求完善簡易] 查看 723 回复 5
楼 主 [已結]如何將當前運行的路徑儲存成變數[尋求完善簡易] 发表于 2008-07-29 00:56 ·  中国 台湾 中华电信(HiNet)数据中心
初级用户
★★
积分 144
发帖 65
注册 2008-03-20 20:03
18年会员
UID 113522
性别 男
来自 Taiwan
状态 离线
請問如何將當前運行的路徑儲存成變數
我目前的做法是這樣
請問是否又更好的方法呢?
這樣是連 UNC路徑都可以存起來

@echo off
SET xxxxx=%~dp0
set source=%xxxxx:~0,-1%
echo Source Paht is %Source%
pause


[ Last edited by XZ on 2008-7-29 at 11:00 PM ]
2 发表于 2008-07-29 02:21 ·  中国 山东 淄博 联通
银牌会员
★★★
积分 1,604
发帖 646
注册 2008-04-13 23:39
18年会员
UID 115804
性别 男
状态 离线
你的已经算好方法了。

@echo off
set "a=%~0"
call,set "a=%%a:\%~nx0=%%"
echo %a%
pause
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
XZ +1 2008-07-29 12:56
心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
3 发表于 2008-07-29 02:56 ·  中国 江苏 常州 溧阳市 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
20年会员
UID 42345
状态 离线
echo %cd%
简单!简单!再简单!
4 发表于 2008-07-29 12:52 ·  中国 台湾 中华电信(HiNet)数据中心
初级用户
★★
积分 144
发帖 65
注册 2008-03-20 20:03
18年会员
UID 113522
性别 男
来自 Taiwan
状态 离线
Originally posted by terse at 2008-7-29 02:56 AM:
echo %cd%

^^"
這樣子在網路上的芳鄰會抓到 windows的目錄
UNC不能用路徑下不能用


'\\127.0.0.1\x'
是目前用來啟動 CMD.EXE 的目錄路徑。不支援 UNC 路徑
預設目錄是 Windows 目錄。

C:\WINDOWS>set source=C:\WINDOWS

C:\WINDOWS>echo C:\WINDOWS
C:\WINDOWS

C:\WINDOWS>pause
請按任意鍵繼續 . . .


[ Last edited by XZ on 2008-7-29 at 12:56 PM ]
5 发表于 2008-07-29 13:50 ·  中国 江苏 常州 武进区 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
20年会员
UID 42345
状态 离线
Originally posted by XZ at 2008-7-29 12:52:

^^"
這樣子在網路上的芳鄰會抓到 windows的目錄
UNC不能用路徑下不能用


'\\127.0.0.1\x'
是目前用來啟動 CMD.EXE 的目錄路徑。不支援 UNC 路徑 ...

没懂
%cd% 和上面的不一样吗
简单!简单!再简单!
6 发表于 2008-07-29 22:54 ·  中国 台湾 中华电信(HiNet)数据中心
初级用户
★★
积分 144
发帖 65
注册 2008-03-20 20:03
18年会员
UID 113522
性别 男
来自 Taiwan
状态 离线
Originally posted by terse at 2008-7-29 01:50 PM:

没懂
%cd% 和上面的不一样吗


不太一樣耶
假設 TEST.bat 位於 \\127.0.0.1\test
test.bat
內容如下

@echo on
set "a=%~0"
call,set "a=%%a:\%~nx0=%%"
echo %a%

echo %cd%
pause



結果:
pusofalse寫的顯示出的是 \\127.0.0.1\test
而 %cd% 回傳的是Windows目錄 ^^"

@echo off
'\\127.0.0.1\test'
是目前用來啟動 CMD.EXE 的目錄路徑。不支援 UNC 路徑。
預設目錄是 Windows 目錄。

C:\WINDOWS>set "a=\\127.0.0.1\test\test.bat"

C:\WINDOWS>call,set "a=%a:\test.bat=%"

C:\WINDOWS>echo \\127.0.0.1\test
\\127.0.0.1\test

C:\WINDOWS>echo C:\WINDOWS
C:\WINDOWS

C:\WINDOWS>pause
請按任意鍵繼續 . . .
论坛跳转: