Кто знает Unix Shell? , Нужно не большую программулину написать.

Автор темы Habis, 11.9.2013, 19:32

  • Авторизуйтесь для ответа в теме

#1 Habis

Habis

    Ветеран

  • Пользователи-2
  • *****
  • 2 076 cообщений
  •   3  
  • Offline
  • Карточка
  • ЛС

Сообщение добавлено 11.9.2013, 19:32

На языке unix shell написать программу, которая переводит имена подкаталогов текущего каталога в с английского на немецкий, используя словарь вида:
english<space>german
Словоформы не учитывать.

С unix shell не работал.
Подскажите пожалуйста.
My project 21о93
www.vaz.ee/forum/topic30782.html



  • Авторизуйтесь для ответа в теме

#2 Pugnator

Pugnator

    /b/rony

  • Супермодераторы
  • *****
  • 13 416 cообщений
  •   45  
  • Offline
  • Карточка
  • ЛС

Сообщение добавлено 12.9.2013, 2:18

Ну давай попробуем, чистый bash.
Создаем файл словаря
Цитата
one ein
two zwei
three drei
four vier
five funf
six sechs
seven sieben
eight acht
nine neun
ten zehn


Теперь создадим англоименованные директории основываясь на словаре (словарь в файле dic)

Код
mkdir $(cut --delimiter=' ' -f 1 < dic)


В коде выше мы читаем файл построчно < dic
Бьем строку на части по разделителю - пробел --delimiter=' '
И берем первую часть -f 1

Директории есть, можно убедиться через ls

Теперь переименовываем все директории по словарю, если не находим - выводим ворнинг

Код

#!/bin/bash
for i in *; do
if [ -d "$i" ]; then
    if [ $i == $(grep $i dic | cut -d ' ' -f 1) ]; then
    mv $i $(grep $i dic | cut -d ' ' -f 2)
    else
    echo "The word $i wasn't found in the dictionary"
    fi
fi
done


Спасибо сказали: 3
Excuses are like assholes: everybody's got one




Сообщений в этой теме
Habis   Кто знает Unix Shell?   11.9.2013, 19:32
BN6   На языке unix shell написать программу, которая п...   11.9.2013, 22:09
Habis   BN6, увы требования преподавателя......   11.9.2013, 22:16
Habis   Pugnator, данный файл dic, он локально хранится н...   12.9.2013, 11:02
BN6   Pugnator, данный файл dic, он локально хранится н...   12.9.2013, 11:42
Pugnator   Код несколько неоптимизирован. Поиск по словарб ид...   12.9.2013, 16:54
Agassy   ...Можно работать в два раза быстрее, если парсин...   13.9.2013, 8:51
Pugnator   "Длинная" переменная - должна вызвать у...   13.9.2013, 10:27
Bosyak   Ну, во-первых, там будет храниться два слова плюс...   13.9.2013, 10:29
Agassy   Ну, во-первых, там будет храниться два слова плюс...   13.9.2013, 10:38
Habis   Agassy, там вообще ни какие ограничения не вводил...   13.9.2013, 12:39
Agassy   Agassy, там вообще ни какие ограничения не вводи...   13.9.2013, 13:05
Habis   сорри, не совсем понял суть вопроса. Ограничения...   13.9.2013, 13:13
Agassy   Ограничения на использование памяти. Нет, ограни...   13.9.2013, 13:54

  • Авторизуйтесь для ответа в теме

1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)