Linux Labs

Bash: обработка текста и скрипты / Ступень 4 из 9

Скрипт — это файл с командами

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 1 из 6 · на машине · 4 мин

Скрипт от коллеги

Чему научишься

  • Запускать скрипт через интерпретатор и как программу, понимая, кто читает файл.
  • Делать свой скрипт командой, которая находится по имени из любого каталога.
  • Хранить путь в переменной и подставлять её в кавычках, чтобы пробел не делил путь.

Коллега уходит в отпуск и оставляет тебе скрипт backup-notes.sh: он собирает рабочие заметки в архив. «Просто запусти», — пишет он. Скрипт лежит в ~/script-lab, и запустить его можно тремя способами.

Упражнение · посмотреть

Запусти скрипт коллеги

Ты в ~/script-lab. Запусти backup-notes.sh тремя командами карточки по очереди.

Сначала предположи

Файл backup-notes.sh твой и лежит в текущем каталоге. Что ответит оболочка на ./backup-notes.sh?

Теперь начни упражнение, выполни команду и сверь прогноз с выводом.

Войти и начать Машина доступна после входа
Проверь себя 1 вопрос

Почему ./backup-notes.sh получил отказ, хотя файл твой и его можно прочитать?

  • Ты уже в ~/script-lab — pwd это покажет. И файл нашёлся: иначе ответ был бы No such file or directory.

  • Свои программы student запускает и в домашнем каталоге. Дело в правах самого файла: ls -l backup-notes.sh показывает -rw-r--r--, буквы x нет.

  • Ошибку в строке 5 нашёл sh, когда начал читать файл. ./ получил отказ раньше, до чтения строк.

Запускать файл как программу можно только с правом x, а у backup-notes.sh его нет.

Ubuntu 24.04
Загрузка…