This is to help fill in the gaps in Adrien Plisson's answer (which should be upvoted as soon as he edits it -): The documentation for the set of modifiers allowed on a batch argument can be found here: you'll observe the following output: %~dp0 is "C:\temp\" If you save this as c:\temp\example.bat and the run it from c:\Users\Public asĬ:\Users\Public>\temp\example.bat. Rem Temporarily change the current working directory, to retrieve a full path Here's an example that'll demonstrate each of these techniques: off If you need to support both relative and absolute paths, you can make use of Frédéric Ménez's solution: temporarily change the current working directory. It does have a shortcoming though: it miserably fails if the first argument is fully-qualified. Personally, I often use the %~dp0%~1 idiom in my batch file, which interpret the first argument relative to the path of the executing batch. You can also get the fully qualified path of your first argument by using %~f1, but this gives a path according to the current working directory, which is obviously not what you want. You can use %~dp0 to get only the path portion of the 0th argument (which is the current script) - this path is always a fully qualified path. To compare two folder (ex.In batch files, as in standard C programs, argument 0 contains the path to the currently executing script.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |