コマンドプロンプト上でのファイル展開に関して質問です。
少し複雑な質問です。普段コマンドプロンプトを使用する上では気にしなくても良い点なのですが、
興味本位で仕組みを知りたくなりました。
状況:
デスクトップ上に目標設定.docx というwordファイルがあり、それを開く。
C:\Users\Yuki\Desktop>assoc .docx .docx=Word.Document.12 C:\Users\Yuki\Desktop>ftype Word.Document.12 Word.Document.12="C:\Program Files (x86)\Microsoft Office\Root\Office16\WINWORD.EXE" /n "%1" /o "%u" C:\Users\Yuki\Desktop>WINWORD.EXE 目標設定.docx 'WINWORD.EXE' is not recognized as an internal or external command, operable program or batch file. C:\Users\Yuki\Desktop>cd C:\Program Files (x86)\Microsoft Office\Root\Office16 C:\Program Files (x86)\Microsoft Office\root\Office16>WINWORD.EXE 目標設定.docx (ここではwordが起動して、ファイルが見つかりませんという表示が出てしまいます。)
上記の結果から、
拡張子がdocxの場合、assocでファイルタイプはWord.Document.12とわかり、それはWord.Document.12="C:\Program Files (x86)\Microsoft Office\Root\Office16\WINWORD.EXE" /n "%1" /o "%u"で開かれるように紐づけされているのがわかる。
[質問点]
最後の行のようにファイルタイプ(WINWORD.EXE)をわざわざ書いて起動する場合、
WINWORD.EXEはPATHで紐づけられていないので、ディレクトリがデスクトップのままでは開きません。
しかし、ディレクトリをWINWORD.EXEのある場所にしてしますと、WINWORD.EXEから目標設定.docxファイルに繋がりません。
このような場合はどのようにすればファイルを開くことが出来ますか?
コマンドラインの始めに、目標設定.pyと入力した場合 拡張子の.pyからファイルタイプが見つかり、何を使ってこのファイルを開けばよいかが指定されるので、WINWORD.EXEがカレントディレックトリにある必要はありませんでしたが、
デスクトップディレクトリで"WINWORD.EXE 目標設定.docx" と入力した場合は 目標設定.docxが引数とみなされてしまうので、WINWORD.EXEまで結びつきません。かといってWINWORD.EXEのあるディレクトリに移動してしまうと目標設定.docxが見つからなくなってしまいます。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/14 00:04
2017/02/14 00:07