В репозитории 2 ветки: 
master, 
build. 
build ветка должна выполнять еще 1 действие в Jenkinsfile, а именно - упаковка библиотеки в nuget пакет:
stage("publish") {
    when {
        expression {
            GIT_BRANCH == 'build'
        }
    }
    steps {
        bat "dotnet pack -c Release -o ".\artifacts" --no-build"
    }
}
Но такой Jenkinsfile выдает ошибку: 
WorkflowScript: 30: unexpected char: '\' @ line 30, column 38.
Как быть в этой ситуации, когда надо указать путь, но он ругается на обратный слеш? (пробовал поставить 2 - тоже самое, двойные кавычки менял на одинарные - тоже самое)
Можно ли как-то унифицировать Jenkinsfile, чтобы он работал и на Windows, и на Linux? (sh в Windows сваливается в ошибку 
Caused: java.io.IOException: Cannot run program "nohup")
Полный Jenkinsfile:
pipeline {
    agent any
    stages {
        stage("clean") {
            steps {
                bat "dotnet clean -c Release"
            }
        }
        stage("build") {
            steps {
                bat "dotnet build -c Release"
            }
        }
        stage("test") {
            steps {
                bat "dotnet test -c Release --no-build --verbosity=normal"
            }
        }
        stage("publish") {
            when {
                expression {
                    GIT_BRANCH == 'build'
                }
            }
            steps {
                bat "dotnet pack -c Release -o ".\artifacts" --no-build"
            }
        }
    }
}