Самый простой подход, который работает в любой версии 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- это время преобразования, которое ожидается как один параметр.