Я хочу встроить скрипт awk в сценарий оболочки, но у меня возникли проблемы с этим, так как я не знаю, где положить конец инструкции; и где нет.Написание сценария оболочки оболочки для awk
Вот мой сценарий
#!/bin/sh
awk='
BEGIN {FS = ",?+" }
# removes all backspaces preceded by any char except _
function format() {
gsub("[^_]\b", "")
}
function getOptions() {
getline
format()
print
}
{
format()
if ($0 ~ /^SYNOPSIS$/ {
getOptions()
next
}
if ($0 /^[ \t]+--?[A-Za-z0-9]+/) {
print $0
}
}
END { print "\n" }'
path='/usr/share/man/man1'
list=$(ls $path)
for item in $list
do
echo "Command: $item"
zcat $path$item | nroff -man | awk "$awk"
done > opts
Я использую nawk кстати.
Заранее спасибо
Извините, что вызвало много путаницы здесь ^^ ... прежде всего, я разместил неправильную версию скрипта, которая исправлена к настоящему времени ... во-вторых, теперь скрипт работает: -) ... причина заключалась в том, что я забыл поместить $ awk в двойные кавычки, что всегда давало мне синтаксическую ошибку в первой строке скрипта ... – helpermethod
Спасибо всем за ваши ответы, они обеспечили отличную проницательность ^^ – helpermethod