|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Linux и FreeBSD » Программирование в *nix » Информация о содержимом файла: подсчет слов и т.д. |
|
|
Информация о содержимом файла: подсчет слов и т.д.
|
|
Новый участник Сообщения: 8 |
Привет. Нужно написать программку, аналог команды wc, которая получала бы в качестве аргумента имя иекстового файла и выводила на экран информацию о том, сколько символов, слов и строк в текстовом файле. Я догадываюсь, что это нужно сделать с помощью функций AWK, но как.
Помогите, а? |
|
|
Отправлено: 12:39, 28-05-2008 |
|
Ветеран Сообщения: 4527
|
Профиль | Сайт | Отправить PM | Цитировать неинформативное название темы
|
|
------- Отправлено: 16:25, 29-05-2008 | #2 |
|
Новый участник Сообщения: 5
|
Профиль | Отправить PM | Цитировать Не обязательно awk, думаю легче использовать python или perl, благо ониустановлены по-умолчанию едвали не во всех дистрибутивах.
Например так: #-*-coding:UTF-8-*-
#кодировка - юникод
import sys
def main():
if(len(sys.argv)!=2):
print "Введите в качество аргумента имя файла"
sys.exit(2)#аналог сишного return 2;
#не реагируем если пользователь указал 1 аргумент, в этом случае в переменной sys.argv должно #быть 2 элемента: имя скрипта и имя файла
filename=sys.argv[1]
try:
f=open(filename)
txt=f.read()
f.close()
except:
print "Файл "+filename+" не найден"
sys.exit(2)
#проверяем существование файла
strings=txt.split("\n")[:-1]
#делим содержимое файла на строки
i=0
words=[]
while i<len(strings):
words=words+strings[i].split(" ")
i=i+1
#делим строки на слова
print "В файле "+filename
print str(len(strings))+" строк"
print str(len(words))+" слов"
print str(len(txt))+" символов"
#вывод в консоль
sys.exit(0)#return 0
if __name__ == "__main__":
main()
Рекомендую почитать книжку по Питону, |
|
Отправлено: 22:36, 08-07-2008 | #3 |
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| Словарь непонятных слов по ИТ | Blast | Хочу все знать | 200 | 30-10-2016 21:46 | |
| CMD/BAT - [решено] подсчет времени выполнения командного файла | mitiya | Скриптовые языки администрирования Windows | 5 | 15-04-2014 10:42 | |
| [игра] Цепочка слов | Vadikan | Флейм | 976 | 21-07-2010 04:38 | |
| Ассоциации, игра слов. Часть 1 | XCodeR | Флейм | 9095 | 10-10-2009 20:52 | |
| Прочие - Читатель английских слов | kirill_ghost | Программное обеспечение Windows | 2 | 06-07-2008 18:00 | |
|