作者Holocaust123 (奔跑的蜗牛)
看板EzHotKey
标题[问题] 相当於双击档案的batch写法
时间Sun Jan 9 16:26:42 2011
※ [本文转录自 Windows 看板 #1DAN4sdq ]
作者: Holocaust123 (奔跑的蜗牛) 看板: Windows
标题: [问题] 相当於双击档案的batch写法
时间: Sun Jan 9 16:26:27 2011
(OS是XP)
假设有个档案叫 123.abc
我想写个batch
相当於用左键点两下123.abc 然後让系统用预设程式开启
(预设程式 = 系统关联到.abc的程式)
查了很久还是不知道怎麽做
请问有会的人可以教一下吗 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.30.32
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.30.32
1F:→ calora:start 123.abc 01/09 20:44
档名含空白会有问题
假设档名叫
test 123.txt
1. start "
test 123.txt"
这样仅会跳出一个新的 cmd 视窗, 而非开启
test 123.txt
2. start
test 123.txt
这样会跳出一个警告视窗:
"Windows 找不到档案或项目 'test' ... (後略)"
http://www.dumpt.com/img/viewer.php?file=cohj31fn2y6n1nwml8a3.jpg
请问该怎麽开启档名含空白的档案?
2F:→ hpo14:请改用 call 试看看 -> call "test 123.txt" 01/10 19:34
谢谢 改成这样的确可以解决档名有空白的问题!
再请教一下 call有办法像start/b那样不显示cmd视窗吗?(call/?里面没写)
3F:→ hpo14:假若 .abc 关联程式为 def, 则可以 def "test 123.abc" 试试 01/10 19:44
4F:→ hpo14:但是前提是 def 要可以位在可以被 cmd 自动搜寻的位置 01/10 19:45
5F:→ hpo14:也就是环境变数, 没有的话可自己新增 01/10 19:46
这个方法不太适用在我的情况, 因为:
1. 手动指定的程式(def)不一定有command line的用法
2. 承上, 就算可以在command line用,
不去翻docs根本就不可能知道parameter要怎麽给@@
(每个parameter代表的意思只有写该程式的人知道)
而且前提是要有docs
3. 承上, 双击该档案的效果可能是 xxx.exe -p1 a1 -p2 a2 ...
a1 a2 之类的值还有可能早就hard-coded了
不是每个程式都是 xxx.exe argument 这麽简单
4. 承上, Windows下的副档名这麽多
不可能手动一个一个写
光环境变数就设不完了...
(123.abc只是举例 我希望能套用到所有的副档名)
※ 编辑: Holocaust123 来自: 140.112.30.32 (01/10 20:48)
--
http://stackoverflow.com/questions/72671/how-to-create-batch-file-in-windows-using-start-with-a-path-and-command-with-sp
缩:
http://tinyurl.com/24qen8k
参考这网站的方法 即可用start开启档名有空白的档案:
start "" "test 123.abc"
※ 编辑: Holocaust123 来自: 140.112.30.32 (01/10 21:09)
6F:推 darkgerm:其实start /?就可以查到了 要加上"title"才不会误判 01/11 00:52
7F:→ hpo14:阿阿,我笨了 XD 忘记先打个 title 就OK 01/11 21:08
8F:→ calora:start "" "123 abc.abc" 01/12 18:30