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

Правильный способ изменить uname - это изменить заголовки компиляции и перекомпилировать, как предлагали другие. Но я не уверен, почему вы хотите испытывать столько проблем, если вы можете сделать что-то вроде,

alias uname 'uname \\!* | sed s/2.6.13/2.6.52/'

или даже

alias uname 'echo whatever'
6
13.04.2017, 15:36
3 ответа

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

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

8
27.01.2020, 20:20

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

Об этом упоминается в руководстве bash , раздел Арифметика оболочки .

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

13
27.01.2020, 20:20

Конечно, это в man bash Внутри АРИФМЕТИЧЕСКАЯ ОЦЕНКА :

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

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

2
27.01.2020, 20:20

Теги

Похожие вопросы