From QB64 Wiki
The _CWD$ function returns the current working directory path as a string value with the path separator of the OS used (\ on Windows, / on Linux/Mac).
- workingdirectory$ = _CWD$
- By default, the initial working directory path is usually the same as the directory of the executable file run.
- The current working directory can be changed with the CHDIR or SHELL command; CHDIR sets it, _CWD$ returns it.
- Path returns will change only when the working path has changed. When in C:\ and run QB64\cwd.exe, it will still return C:\
- The current working directory string can be used in OPEN statements and SHELL commands that deal with files.
- Works in Windows, MAC OSX and Linux. _OS$ can be used by a program to predict the proper slash separations in different OS's.
- If an error occurs while obtaining the working directory from the operating system, error code 51 (Internal Error) will be generated.
Example: Get the current working directory, and move around the file system:
startdir$ = _CWD$ PRINT "We started at "; startdir$ MKDIR "a_temporary_dir" CHDIR "a_temporary_dir" PRINT "We are now in "; _CWD$ CHDIR startdir$ PRINT "And now we're back in "; _CWD$ RMDIR "a_temporary_dir"
We started at C:\QB64 We are now in C:\QB64\a_temporary_dir And now we're back in C:\QB64
- CHDIR (Change the current working directory)
- RMDIR (Remove a directory in the file system)
- KILL (Delete a file in the file system)
- MKDIR (Create a directory in the file system)
- _OS$ (returns current OS to program)
- _STARTDIR$ (returns path the user called program from)