Поиск пиратского сокровища

ShellShellBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Капитан Черная Борода спрятал свои сокровища на отдаленном острове и оставил серию подсказок, закодированных в виде shell-переменных и арифметических операций. В этом задании вам предстоит завершить частично написанный shell-скрипт, чтобы расшифровать эти подсказки и найти сокровище.

Это Challenge, который отличается от Guided Lab тем, что вам нужно пытаться выполнить задачу вызова самостоятельно, а не следовать шагам лабораторной работы для обучения. Challenges, как правило, немного сложны. Если вам сложно, вы можете обсудить с Labby или посмотреть решение. Исторические данные показывают, что это задание уровня начальный с процентом прохождения 96.42%. Он получил 98.24% положительных отзывов от учащихся.

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) shell(("Shell")) -.-> shell/AdvancedScriptingConceptsGroup(["Advanced Scripting Concepts"]) shell(("Shell")) -.-> shell/VariableHandlingGroup(["Variable Handling"]) shell/VariableHandlingGroup -.-> shell/variables_decl("Variable Declaration") shell/VariableHandlingGroup -.-> shell/variables_usage("Variable Usage") linux/BasicFileOperationsGroup -.-> linux/chmod("Permission Modifying") shell/AdvancedScriptingConceptsGroup -.-> shell/arith_ops("Arithmetic Operations") shell/AdvancedScriptingConceptsGroup -.-> shell/arith_expansion("Arithmetic Expansion") subgraph Lab Skills shell/variables_decl -.-> lab-388807{{"Поиск пиратского сокровища"}} shell/variables_usage -.-> lab-388807{{"Поиск пиратского сокровища"}} linux/chmod -.-> lab-388807{{"Поиск пиратского сокровища"}} shell/arith_ops -.-> lab-388807{{"Поиск пиратского сокровища"}} shell/arith_expansion -.-> lab-388807{{"Поиск пиратского сокровища"}} end

Расшифровка карты сокровищ

Карта сокровищ была закодирована в shell-скрипт, который необходимо завершить. Скрипт использует базовые арифметические операции для преобразования начальных координат в конечное местоположение. Ваша задача - заполнить недостающие значения и вычисления, чтобы узнать, где зарыт клад.

Задачи

Завершите скрипт treasure_map.sh в каталоге /home/labex/project, выполнив следующие действия:

  • Присвойте правильные начальные значения переменным LATITUDE и LONGITUDE.
  • Реализуйте арифметические операции для вычисления PACES_NORTH и PACES_EAST.

Требования

  1. Shell-скрипт treasure_map.sh находится в /home/labex/project со следующей структурой кода:
#!/bin/bash

## Assign the correct values to these variables
LATITUDE=
LONGITUDE=

## Calculate the paces using arithmetic operations
PACES_NORTH=
PACES_EAST=

## Don't modify the line below
echo "The treasure is buried $PACES_NORTH paces north and $PACES_EAST paces east from the old oak tree."
  1. Используйте следующие значения и вычисления:

    • Установите LATITUDE равным 15.
    • Установите LONGITUDE равным 25.
    • Вычислите PACES_NORTH как широту, умноженную на 2.
    • Вычислите PACES_EAST как долготу, разделенную на 5.
  2. Скрипт должен выводить местоположение сокровища в следующем формате:

The treasure is buried X paces north and Y paces east from the old oak tree.

Где X и Y - вычисленные значения.

Пример вывода

The treasure is buried 30 paces north and 5 paces east from the old oak tree.

Подсказки

  • Убедитесь, что скрипт является исполняемым, используя chmod +x.
✨ Проверить решение и практиковаться

Итог

В этом задании вы изучили основы shell-скриптинга (shell scripting):

  • Присвоение значений переменным.
  • Выполнение арифметических операций в shell-скриптах.
  • Запуск скриптов и форматирование вывода.

Эти навыки являются основополагающими для более сложных задач shell-скриптинга.

OSZAR »