Написание скрипта / lab1
.doc
Дисциплина Операционные Системы
Кафедра МОЭВМ
Отчет по лабораторной работе №1
«Написание скрипта»
Выполнила : Чярина Т.В.
Группа : № 5341
Проверил : Алексеев А.Н.
Санкт-Петербург, 2008г
Постановка задачи:
Написать скрипт, который принимает в качестве параметра директорию, с которой будет работать.
Dir:
-
in - набор файлов с расширением txt
-
out – выходная директория
В файлах в начале строки (в некоторых файлах) есть code:число.
Скопировать в out только те файлы в которых есть code:число, но без этой строки. причем при копировании переименовать файл в число которое шло после code.
Реализация программы
#! /bin/bash
echo "Текущая директория:"
echo $1
if ! [ -e $1 ]; then
echo "Директория $1/ не существует!"
exit
fi
getIndex()
{
fileName=$1
codeLine=`grep -m 1 ^code:* $fileName`
index=`expr match "$codeLine" "^code:\(.*\)"`
}
filesIn=`ls $1/in/*.txt`
if ! [ -e $1/out ]; then
mkdir $1/out
fi
for fileName in $filesIn
do
getIndex $fileName
cp $fileName $1'/out/'$index'.txt'
done
filesOut=`ls $1/out/*.txt`
for fileName in $filesOut
do
sed '/^code/d' $fileName 1>>$fileName'.txt'
more $fileName'.txt' 1>$fileName
rm $fileName'.txt'
done