0
Я не знаком с perl и bash, но мне нужно использовать Perl-скрипт, который включает команды bash, чтобы это сделать. вот команда:Как уменьшить несколько аргументов в perl-скрипте
basename -t input.nii.gz -o output \
-g atlas1.nii.gz -l labels1.nii.gz \
-g atlas2.nii.gz -l labels2.nii.gz \
-g atlas3.nii.gz -l labels3.nii.gz \
-g atlas4.nii.gz -l labels4.nii.gz \
-g atlas3.nii.gz -l labels3.nii.gz \
-g ............ \
-l ............
У меня есть 18 файлов атлас и этикеток, а команда не может быть выполнена только в строго определенном порядке. Можно ли уменьшить аргументы следующим образом:
basename -t input.nii.gz -o output -g atlas%.nii.gz -l labels%.nii.gz
спасибо.
Я действительно смущен ... Я понимаю ваш вопрос, но не «basename» просто удаляет путь из файла? Я не думал, что у него даже есть такие параметры, как -t и -o. Я мог бы быть полностью в левом поле. – Hambone
Это не Perl, и у bash действительно есть переменные. Он будет больше похож на 'atlas $ i.nii.gz' – ikegami
Пожалуйста, будьте более конкретным. basename - команда в bash, и у нее нет параметров -t, -o -g или -l. http://linux.die.net/man/1/basename –