Случайное число синтаксиса ошибки bash

Как сказал @Giles , убедитесь, что у вас правильно настроено автозаполнение, и у вас есть ключ ssh на машине.

Добавление этой конфигурации к моему ~/.ssh/configсильно повлияло на скорость.

Host *
 ControlMaster auto
 ControlPath ~/.ssh/master-socket/%r@%h:%p
 ControlPersist 10s

Это создаст главное соединение для каждого хоста.

10-секундное сохранение даст вам некоторое время, чтобы просмотреть каталог, прежде чем соединение будет автоматически закрыто.

Без сохранения вам придется заново создавать соединение, что замедлит завершение вкладок.

Пример

~$ scp mymachine:~/paВКЛАДКА

path/ palace/ pandas/ porn/

~$ scp mymachine:~/path/toВКЛАДКА

~$ scp mymachine:~/path/to/fileВКЛАДКА

-2
23.11.2021, 14:50
1 ответ

Необходимо четко понимать эти разные операторы:

  • Арифметическая оценка,$((..... ))
  • Выполнение команды в подоболочке,$(..... )

Ведущий $является частью открывающей последовательности каждого оператора. Несколько (несколько глупых )примеров:

  • Выполнение подоболочки внутри арифметической оценки:год по модулю месяц,
echo $(( $(date +%Y) % $(date +%m) ))
  • Арифметическая оценка внутри выполнения подоболочки:вычислить от 2 до 30-го и вывести дату, соответствующую этому количеству секунд с начала эпохи,
echo "Quite some $(date --date="@ $((1 << 30))" -R) time ago"

Теперь, пожалуйста, еще раз рассмотрите свой код,

randomNumber=$(((od -vAn -N4 -tu4 < /dev/urandom) % nombre2))

где вы пытаетесь выполнить подоболочку внутри арифметического вычисления ; теперь вы видите, чего не хватает?



Я думаю, что могу догадаться об источнике вашей первоначальной путаницы :внутри арифметической оценки, можно сослаться на переменную без ее обычного префикса $:

z=42
echo $((33 + z))

совпадает с

z=42
echo $((33 + $z))

; и поэтому, возможно, казалось разумным опустить префикс $и для других вещей?

2
23.11.2021, 16:22

Теги

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