Как указал Джейсонрайан, вам нужно защитить себя от пробелов в строках, которые вы тестируете. Вы можете сделать это, заключив переменные в кавычки, чтобы при раскрытии они по-прежнему считались единым целым, или используя оператор [[
вместо [
], который является умнее в обращении с такими расширениями, но менее портативен.
В противном случае, если либо строка1
, либо строка2
имеет пробел, у вас будет такое выражение, как:
string1="string one"
if [ -z string one ] ...
, поэтому оно будет передавать 2 строки «строка» и «один» на -z
, который ожидает только один аргумент.
Попробуйте
sudo rm -rf /var/lib/apt/lists/*
Затем
sudo apt-get update