Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Новый участник


Сообщения: 5
Благодарности: 1

Профиль | Отправить 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