Windows Cheat Sheet
This page contains notes and tips to assist you in understanding the different tools used when migrating Buck2 to Windows.
CMD, Powershell, Bash Command Comparison
Bash | Powershell | CMD | What does it do |
---|---|---|---|
cd | cd | cd | Change the current directory |
mkdir | mkdir | mkdir / md | Create a directory |
ls | ls | dir | List contents of a directory |
export var="value" | $env:var="value" | set var=value | To set environment variables |
$ENV_VAR | $env:ENV_VAR | %ENV_VAR% | Read environment variable |
echo "Hello world" | echo "Hello world" | echo Hello world | To print something on the screen |
rm | rm | del | Delete a file |
rm -rf | rmdir | rmdir | Delete a directory |
cat | cat | type | Print file content to console |
Symlinks
In Windows, there are two types of symlinks: file and directory.
You can find out which type of symlink is being created using:
dir /AL /S <path>
.
The command lists all of the symbolic links in the <path>
directory:
^<SYMLINKD^>
is a Directory SymLink^<SYMLINK^>
is a File SymLink
Target names
Escaping the '=' symbol on Windows is quite complicated: make sure none of the targets being built contain this symbol as it could cause build breakages.