Сценарий оболочки — это, по сути, список команд, заканчивающийся разделителями строк, который будет интерпретироваться как список команд указанным интерпретатором (или интерпретатором по умолчанию ).
Чтобы указать интерпретатор, ваш файл должен начинаться с хэш-банга (, также называемого шебангом ).
Примеры:
#!/bin/sh
#!/bin/bash
#!/bin/ksh
#!/bin/zsh
#!/usr/bin/env bash
Примечание :каждый из этих интерпретаторов имеет свой собственный синтаксис и набор правил. Вы должны изучить руководство для того, какой из них вы планируете использовать.
После вашего hashbang вы можете просто начать перечислять свои команды, которые будут выполняться каждая в отдельной строке.
Обратите внимание, :эти команды будут выполняться в порядке сверху вниз
В вашем примере вам нужно что-то вроде:
#!/bin/sh
awk -f program.awk d01.active > out1
awk -f program.awk d02.active > out2
Затем вам нужно будет сделать этот файл исполняемым и запустить его, указав полный или относительный путь к файлу в командной строке. (или запустивsh /path/to/file
)
Это похоже на потенциальную проблему x -y, и, вероятно, ее можно решить более программным способом.
Например,:
#!/bin/bash
for file in d??.active; do
n=${file:1:2}
awk -f program.awk "$file" > "out$n"
done