Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества? Помогите нам с документацией!
0 Пользователей и 1 Гость просматривают эту тему.
Цитата: livanda от 23 Октября 2021, 15:49:12не ошибка и не логическая ошибка итоприттор баша видет хорошоувы, там всё плохо. Удивительно, что вообще работает. Прогнал через shellcheck (Нажмите, чтобы показать/скрыть)Код: [Выделить]In ./Общие/test.sh line 3:DATEY=`date "+%Y"`^---^ SC2034: DATEY appears unused. Verify use (or export if used externally). ^----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.Did you mean:DATEY=$(date "+%Y")In ./Общие/test.sh line 4:ARREY_BACKUP=($HOME/cache) ^---^ SC2206: Quote to prevent word splitting/globbing, or split robustly with mapfile or read -a.In ./Общие/test.sh line 5:ARREY_TO_BACKUP_DIR=($HOME/SPACES) ^---^ SC2206: Quote to prevent word splitting/globbing, or split robustly with mapfile or read -a.In ./Общие/test.sh line 10:for DIR in ${ARREY_TO_BACKUP_DIR[@]} ; do ^-----------------------^ SC2068: Double quote array expansions to avoid re-splitting elements.In ./Общие/test.sh line 11: LOG_ERROR=""$DIR"/"$BACKUP_FOLDER".ERROR.log" ^--^ SC2027: The surrounding quotes actually unquote this. Remove or escape them. ^------------^ SC2027: The surrounding quotes actually unquote this. Remove or escape them.In ./Общие/test.sh line 12: LOG=""$DIR"/"$BACKUP_FOLDER".log" ^--^ SC2027: The surrounding quotes actually unquote this. Remove or escape them. ^------------^ SC2027: The surrounding quotes actually unquote this. Remove or escape them.In ./Общие/test.sh line 17: df "$DIR" >/dev/null && for BACKUP in ${ARREY_BACKUP[@]} ; do ^----------------^ SC2068: Double quote array expansions to avoid re-splitting elements.In ./Общие/test.sh line 20: DIR_SIZE="$(echo $(df "$DIR" | awk '{print $4}'))" ^-----------------------------^ SC2046: Quote this to prevent word splitting. ^-----------------------------^ SC2005: Useless echo? Instead of 'echo $(cmd)', just use 'cmd'.In ./Общие/test.sh line 21: BACKUP_SIZE="$(echo $(du -s "$BACKUP" | awk '{print $1}'))" ^-- SC2046: Quote this to prevent word splitting. ^-- SC2005: Useless echo? Instead of 'echo $(cmd)', just use 'cmd'.For more information: https://www.shellcheck.net/wiki/SC2068 -- Double quote array expansions to ... https://www.shellcheck.net/wiki/SC2027 -- The surrounding quotes actually u... https://www.shellcheck.net/wiki/SC2034 -- DATEY appears unused. Verify use ...
не ошибка и не логическая ошибка итоприттор баша видет хорошо
In ./Общие/test.sh line 3:DATEY=`date "+%Y"`^---^ SC2034: DATEY appears unused. Verify use (or export if used externally). ^----------^ SC2006: Use $(...) notation instead of legacy backticked `...`.Did you mean:DATEY=$(date "+%Y")In ./Общие/test.sh line 4:ARREY_BACKUP=($HOME/cache) ^---^ SC2206: Quote to prevent word splitting/globbing, or split robustly with mapfile or read -a.In ./Общие/test.sh line 5:ARREY_TO_BACKUP_DIR=($HOME/SPACES) ^---^ SC2206: Quote to prevent word splitting/globbing, or split robustly with mapfile or read -a.In ./Общие/test.sh line 10:for DIR in ${ARREY_TO_BACKUP_DIR[@]} ; do ^-----------------------^ SC2068: Double quote array expansions to avoid re-splitting elements.In ./Общие/test.sh line 11: LOG_ERROR=""$DIR"/"$BACKUP_FOLDER".ERROR.log" ^--^ SC2027: The surrounding quotes actually unquote this. Remove or escape them. ^------------^ SC2027: The surrounding quotes actually unquote this. Remove or escape them.In ./Общие/test.sh line 12: LOG=""$DIR"/"$BACKUP_FOLDER".log" ^--^ SC2027: The surrounding quotes actually unquote this. Remove or escape them. ^------------^ SC2027: The surrounding quotes actually unquote this. Remove or escape them.In ./Общие/test.sh line 17: df "$DIR" >/dev/null && for BACKUP in ${ARREY_BACKUP[@]} ; do ^----------------^ SC2068: Double quote array expansions to avoid re-splitting elements.In ./Общие/test.sh line 20: DIR_SIZE="$(echo $(df "$DIR" | awk '{print $4}'))" ^-----------------------------^ SC2046: Quote this to prevent word splitting. ^-----------------------------^ SC2005: Useless echo? Instead of 'echo $(cmd)', just use 'cmd'.In ./Общие/test.sh line 21: BACKUP_SIZE="$(echo $(du -s "$BACKUP" | awk '{print $1}'))" ^-- SC2046: Quote this to prevent word splitting. ^-- SC2005: Useless echo? Instead of 'echo $(cmd)', just use 'cmd'.For more information: https://www.shellcheck.net/wiki/SC2068 -- Double quote array expansions to ... https://www.shellcheck.net/wiki/SC2027 -- The surrounding quotes actually u... https://www.shellcheck.net/wiki/SC2034 -- DATEY appears unused. Verify use ...
Не понимаете.Цитироватьне логично почему путь собирается по кусочкамЛогично, что по кусочкам. Собирается нелогично.Код: [Выделить]mkdir -p "$DIR"/"$BACKUP_FOLDER"Формально правильно, но мудрено.Код: [Выделить]mkdir -p "$DIR/$BACKUP_FOLDER"Код: [Выделить]LOG=""$DIR"/"$BACKUP_FOLDER".log"Настолько мудрено, что неправильно.Код: [Выделить]LOG="$DIR/$BACKUP_FOLDER.log"Цитироватьвопрос к поведению сранаому поведнию операторовТот-же бардак, что и с путями. Но в "логику" пока не лезу, тут надо голову включить, а она пока в другую сторону смотрит.
не логично почему путь собирается по кусочкам
mkdir -p "$DIR"/"$BACKUP_FOLDER"
mkdir -p "$DIR/$BACKUP_FOLDER"
LOG=""$DIR"/"$BACKUP_FOLDER".log"
LOG="$DIR/$BACKUP_FOLDER.log"
вопрос к поведению сранаому поведнию операторов
Я и говорю, не понимаете.Ваш код больше всего похож на ваш русский. В школе поставили-бы максимум кол. Независимо от того, напишете "в клетку" или "в линейку".Это не удобство. Это безграмотность. И сменой тетрадки ее не решишь.
Страница сгенерирована за 0.034 секунд. Запросов: 25.