Просто конвертирую некоторые сценарии оболочки в командные файлы, и есть одна вещь, которую я, кажется, не могу найти ... и это простой подсчет количества аргументов командной строки.
например. если у вас есть:
myapp foo bar
В ракушке:
- $ # -> 2
- $ * -> foo bar
- $ 0 -> myapp
- $ 1 -> foo
- $ 2 -> бар
В партии
- ?? -> 2 <---- какая команда ?!
- % * -> foo bar
- % 0 -> myapp
- % 1 -> foo
- % 2 -> бар
Итак, я огляделся и либо смотрю не в том месте, либо я слепой, но, похоже, я не могу найти способ подсчитать количество переданных аргументов командной строки.
Есть ли команда, аналогичная "$ #" оболочки для командных файлов?
пс. самое близкое, что я нашел, - это перебрать% 1s и использовать shift, но мне нужно ссылаться на% 1,% 2 и т. д. позже в сценарии, так что это бесполезно.
2 myapp foo bar
?