Значение `10 # N`

Джимми писал :

Я бы, вероятно, в конечном итоге использовал временный каталог в этом случае:

for file in [[:digit:]]*.png; do echo mv $file tmp/$(printf %04d $((10#${file%.png}+1))).png done 

Важной частью является 10#N которая заставляет bash интерпретировать 000N как просто N , иначе ведущие нули обозначают восьмеричные числа.

Является ли 10#N частью арифметического расширения или что-то еще?

Это упоминается в инструкции Bash или POSIX? Я не нахожу его.

  • Поймать и украсить каждую команду до выполнения
  • Bash: переименовать файл с префиксом в качестве суффикса
  • Параметры dd-стиля для сценария bash
  • Сравнение и расширение брекетов
  • Расширение шаблона bash прекращается через некоторое время
  • Попытка генерировать случайный проход для пользователей и сохранять их в файле
  • Может ли bash написать свой собственный поток ввода?
  • Подстановка числа в имя файла в bash
  • 3 Solutions collect form web for “Значение `10 # N`”

    10#N или общий вид [base#]n где 2 <= base <= 64 будет интерпретировать n как число в этой базе.

    Об этом говорилось в руководстве bash , в разделе Shell Arithmetic .

    Обратите внимание, что эта функция не указана POSIX, доступная только в bash , ksh и ее производных, zsh с базой от 2 до 36.

    Из раздела «Арифметическая оценка» руководства bash ,

    Константы с ведущим 0 интерпретируются как восьмеричные числа. Ведущий 0x или 0X обозначает шестнадцатеричный. В противном случае числа принимают вид [base #] n, где base – десятичное число от 2 до 64, представляющее арифметическую базу, а n – число в этой базе. Если база # опущена, то используется база 10. Знаки больше 9 представлены строчными буквами, буквами верхнего регистра, @ и _ в этом порядке. Если основание меньше или равно 36, строчные и прописные буквы могут использоваться взаимозаменяемо, чтобы представлять числа от 10 до 35.

    Конечно, это в man bash Внутри ARITHMETIC EVALUATION :

     LESS=+/'\[base#\]n,' man bash 

    В противном случае числа принимают форму [base #] n, где необязательная база представляет собой десятичное число от 2 до 64, представляющее арифметическую базу, а n – число в этой базе.

    Interesting Posts

    shell Script: сортировка файлов в каталогах и подкаталогах

    Судоподобная утилита для ssh или, по крайней мере, git в частности?

    Невозможно увидеть HD-файлы из живого debian

    Есть ли в Solaris система yum или apt-get like?

    Как разбить цикл bash на выход внутреннего скрипта?

    как определяется размер страницы в виртуальном адресном пространстве?

    Emacs: интерфейс, который смешивает команды и аргументы

    Вмешательство между кнопкой XF86Display (F4) и кнопкой Super в настройках клавиатуры Xfce

    Переменные в истории?

    Пусть удаленный сеанс ssh знает о tmux?

    Переключить пользователя в сценарий оболочки без ввода пароля

    наиболее эффективный и безопасный способ сделать полную дифференциальную резервную копию с помощью rsync

    Проверяет ли верхние системные файлы?

    Можно ли переместить relpath в одной команде?

    Linux перестает загружаться после ссылки eth0. Как заставить его показывать больше журнала?

    Linux и Unix - лучшая ОС в мире.