Самый простой подход, который работает в любой версии Windows, заключается в использовании общих пакетных файлов, хранящихся в общей папке, доступной в вашей PATH .
Для передачи ввода в пакетные файлы используйте %* , что означает «все параметры, переданные в командную строку пакетного файла», или используйте %1 , %2 , ... %9 для ссылки на отдельные параметры.
Лично я храню свои командные файлы в C:\Batch и помещаю их в начало моего PATH . При запуске командных файлов вы можете опустить суффикс .bat , чтобы получить похожий внешний вид и псевдонимы bash.
Несколько примеров из моих собственных:
s3cmd.bat , который содержит: python c:\devtools\s3cmd-2.0.0\s3cmd %* .
Все параметры передаются непосредственно в саму программу s3cmd .
clangcheck.bat , который является сокращением для: clang-check -analyze -extra-arg -Xclang -extra-arg -analyzer-output=text %* . Здесь параметры пакета передаются вместе с дополнительными аргументами для clang-check .
epoch_to_time.bat , который конвертирует время эпохи Unix в читаемое местное время.
Он содержит: perl -pe "s/([\d]{10})/localtime $1/eg;" %1 . Здесь %1 - это время преобразования, которое ожидается как один параметр.