"$OUT_FILE" done" /> "$OUT_FILE" done" /> помогите с shell процедурой - Ubuntu.ru

Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: помогите с shell процедурой  (Прочитано 1519 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Izrador

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
помогите с shell процедурой
« : 19 Декабря 2011, 19:16:44 »
всем привет, помогите мне с shell процедурой , зарание спосибо
Написать shell-процедуру, которая:
• Читает содержимое файла, передаваемого в качестве первого параметра;
• Создает в текущем каталоге цепочку подкаталогов с относительным маршрутным именем, повторяющим полное маршрутное имя текущего каталога;
• Создает в последнем подкаталоге новый файл, имя которого передается в качестве второго параметра;
• Записывает в новый файл строки первого файла в обратном порядке, вставляя после каждого слова фразу "THAT IS ALL" столько раз, сколько задано третьим параметром


вот что у меня есть, если не правильно исправьте пожалуйста :
usage_exit() {
    echo "Usage: $0 input_file output_file repeat_count"
    exit 1
}

IN_FILE="$1"
OUT_DIR="./${PWD#/*}"
OUT_FILE="$OUT_DIR/$2"
APPEND_COUNT="$3"
APPEND_PHRASE="THAT IS ALL"

if [ ! -f "$IN_FILE" ]; then
    usage_exit
fi

if [ -z "$OUT_FILE" ]; then
    usage_exit
fi

if [[ "$APPEND_COUNT" != [0-9]* ]]; then
    usage_exit
fi

mkdir -p "./${PWD#/*}"

APPEND_STRING=""
for((i=0; i<$APPEND_COUNT; i++)) ; do
    APPEND_STRING="$APPEND_STRING $APPEND_PHRASE"
done

cat $IN_FILE | while read LINE; do
    echo "$LINE$APPEND_STRING" >>"$OUT_FILE"
done

Axa-Ru

  • Гость
Re: помогите с shell процедурой
« Ответ #1 : 19 Декабря 2011, 20:23:55 »
Что делает это выражение?

OUT_DIR="./${PWD#/*}"

Оффлайн Izrador

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: помогите с shell процедурой
« Ответ #2 : 19 Декабря 2011, 21:18:35 »
я не знаю, писал не я :-\

Axa-Ru

  • Гость
Re: помогите с shell процедурой
« Ответ #3 : 19 Декабря 2011, 23:23:38 »
Ну так запустите его.
И посмотрите где что получается.

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: помогите с shell процедурой
« Ответ #4 : 20 Декабря 2011, 07:54:32 »
Сессия подкралась незаметно?

Оффлайн Izrador

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: помогите с shell процедурой
« Ответ #5 : 20 Декабря 2011, 19:11:51 »
ага :-[

Оффлайн unimix

  • Активист
  • *
  • Сообщений: 537
    • Просмотр профиля
Re: помогите с shell процедурой
« Ответ #6 : 21 Декабря 2011, 10:38:02 »
Цитата: Izrador
вот что у меня есть, если не правильно исправьте пожалуйста...
(...)
я не знаю, писал не я :-\

Эх сессия... Внезапно... Ну что ж.
Поработал над скриптом, поправил, удалил лишнее и теперь это принципиально новая процедура:

(Нажмите, чтобы показать/скрыть)

 

Страница сгенерирована за 0.056 секунд. Запросов: 25.