http://search.cpan.org/dist/HTML-Parser/Parser.pm
вторник, 25 ноября 2014 г.
Операторы перенаправления команд
Операторы перенаправления команд используются для изменения местоположений потоков ввода и вывода команд, заданных по умолчанию, на какие-либо другие. Местоположение потоков ввода и вывода называется дескриптор.
В следующей таблице описаны операторы перенаправления потоков ввода и вывода команд.
Оператор перенаправления
|
Описание
|
|---|---|
>
| Записывает данные на выходе команды вместо командной строки в файл или на устройство, например, на принтер. |
<
| Читает поток входных данных команды из файла, а не с клавиатуры. |
>>
| Добавляет выходные данные команды в конец файла, не удаляя при этом существующей информации из файла. |
>&
| Считывает данные на выходе одного дескриптора как входные данные для другого дескриптора. |
<&
| Считывает входные данные одного дескриптора как выходные данные другого дескриптора. |
|
| Считывает выходные данные одной команды и записывает их на вход другой команды. Эта процедура известна под названием «канал». |
По умолчанию, входные данные команды (дескриптор STDIN) отсылаются с клавиатуры интерпретатору команд Cmd.exe, далее Cmd.exe отправляет выходные данные команды (дескриптор STDOUT) в окно командной строки.
В следующей таблице представлены доступные дескрипторы.
дескриптор
| Числовой эквивалент дескриптора | Описание |
|---|---|---|
STDIN
|
0
| Ввод с клавиатуры |
STDOUT
|
1
| Вывод в окно командной строки |
STDERR
|
2
| Ошибка вывода в окно командной строки |
UNDEFINED
|
3-9
| Эти дескрипторы определяются индивидуально для каждой прикладной программы. |
Номера от 0 до 9 представляют первые 10 дескрипторов. Для запуска программы и перенаправления любого из 10 дескрипторов используется интерпретатор команд Cmd.exe. Для задания требуемого дескриптора перед оператором перенаправления введите его номер. Если дескриптор не определен, то по умолчанию оператором перенаправления ввода «<» будет ноль (0), а оператором перенаправления вывода «>» будет единица (1). После ввода оператора «<» или «>» необходимо указать, откуда читать и куда записывать данные. Можно задать имя файла или любой из существующих дескрипторов.
Для задания перенаправления в существующие дескрипторы используется амперсанд (&), затем номер требуемого дескриптора (например,&номер_дескриптора). Например, для перенаправления дескриптора 2 (STDERR) в дескриптор 1 (STDOUT) введите:
1<&2
Дублирование дескрипторов
Оператор перенаправления «&» дублирует выходные или входные данные с одного заданного дескриптора на другой заданный дескриптор. Например, для отправки выводных данных команды dir в файл File.txt и отправки ошибки вывода в файл File.txt введите:
dir>c:\file.txt 2>&1
При дублировании дескриптора происходит копирование всех его исходных характеристик. Например, если дескриптор доступен только для записи, то все его дубликаты будут доступны только для записи. Нельзя продублировать дескриптор с доступом только для чтения в дескриптор с доступом только для записи.
Перенаправление ввода команд (<)
Для перенаправления ввода команд с цифровой клавиатуры на файл или на устройство используйте оператор «<». Например, для ввода команды sort из файла List.txt введите:
sort<file.txt
Содержимое файла File.txt появится в командной строке в виде списка в алфавитном порядке.
Оператор «<» открывает заданное имя файла с доступом только для чтения. Поэтому с его помощью нельзя записывать в файл. Например, при запуске программы с оператором <&2 все попытки прочитать дескриптор 0 ни к чему не приведут, так как изначально он был открыт с доступом только для записи.
Примечание
- Дескриптор 0 задан по умолчанию для оператора перенаправления ввода «<».
Перенаправление вывода команд (>)
Выходные данные практически всех команд высвечиваются в окне командной строки. Даже команды, выводящие данные на диск или принтер, выдают сообщения и запросы в окне командной строки.
Для перенаправления вывода команд из окна командной строки в файл или на устройство применяется оператор «>». Этот оператор используется с большинством команд. Например, для перенаправления вывода команды dir в файл Dirlist.txt введите:
dir>dirlist.txt
Если файл Dirlist.txt не существует, интерпретатор команд Cmd.exe создаст его. Если файл существует, Cmd.exe заменит информацию в файле на данные, полученные от команды dir.
Для запуска команды netsh routing dump и последующей отправки результатов ее работы в Route.cfg введите:
netsh routing dump>c:\route.cfg
Оператор «>» открывает заданный файл с доступом только для записи. Поэтому с помощью данного оператора файл прочитать нельзя. Например, при запуске программы с оператором перенаправления <&0 все попытки записать дескриптор 1 ни к чему не приведут, так как изначально дескриптор 0 был открыт с доступом только для чтения.
Примечание.
- Дескриптор 1 задан по умолчанию для оператора перенаправления вывода «>».
Использование оператора «<&» для перенаправления ввода и дублирования
Для использования оператора перенаправления ввода необходимо, чтобы задаваемый файл уже существовал. Если файл для ввода существует, то интерпретатор команд Cmd.exe открывает его с доступом только для чтения и его содержимое отправляет в команду так, как если бы это был ввод с цифровой клавиатуры. При задании дескриптора интерпретатор команд Cmd.exe дублирует его в дескриптор, существующий в системе.
Например, для считывания файла File.txt на вход в дескриптор 0 (STDIN) введите:
<file.txt
Для открытия файла File.txt, сортировки его содержимого и последующей отправки в окно командной строки (STDOUT) введите:
sort<file.txt
Для того чтобы найти файл File.txt и перенаправить дескриптор 1 (STDOUT) и дескриптор 2 (STDERR) в Search.txt введите:
findfile file.txt>search.txt 2<&1
Для дублирования определенного пользователем дескриптора 3 в качестве входной информации для дескриптора 0 (STDIN) введите:
<&3
Использование оператора «>&» для перенаправления ввода и дублирования
При перенаправлении вывода в файл и задании существующего имени файла интерпретатор команд Cmd.exe открывает файл с доступом только для записи и переписывает его содержимое. Если дескриптор задан, интерпретатор команд Cmd.exe дублирует файл в существующий дескриптор.
Для дублирования определенного пользователем дескриптора 3 в дескриптор 1 введите:
>&3
Для перенаправления всех выходных данных, включая выходные данные дескриптора 2 (STDERR), команды ipconfig в дескриптор 1 (STDOUT) и последующего перенаправления выходных данных в Output.log введите:
ipconfig.exe>>output.log 2>&1
Использование оператора «>>» для добавления вывода
Для добавления выходных данных команды в конец файла без потери хранящейся в нем информации используется двойной символ «больше» (>>). Например, следующая команда добавляет список каталогов, созданный командой dir, в файл Dirlist.txt:
dir>>dirlist.txt
Для добавления выходных данных команды netstat в конец файла Tcpinfo.txt введите:
netstat>>tcpinfo.txt
Использование оператора канала (|)
Оператор канала «вертикальная линия» (|) забирает выходные данные одной команды (по умолчанию STDOUT) и направляет их на вход другой команды (по умолчанию STDIN). Например, следующая команда сортирует каталог:
dir | sort
В данном примере обе команды запускаются одновременно, но команда sort приостанавливает работу до получения выходных данных команды dir. Команда sort использует выходные данные команды dir в качестве своих входных данных, а затем свои выходные данные отправляет в дескриптор 1 (STDOUT).
Комбинирование команд с операторами перенаправления
Комбинируя команды-фильтры с другими командами и именами файлов, можно создавать команды на заказ. Например, для сохранения имен файлов, содержащих строку «LOG», используется следующая команда:
dir /b | find "LOG" > loglist.txt
Выход команды dir отсылается в команду-фильтр find. Имена файлов, содержащие строку «LOG», хранятся в файле Loglist.txt в виде списка (например, NetshConfig.log, Logdat.svd и Mylog.bat).
При использовании более одного фильтра в одной команде их необходимо отделять с помощью канала (|). Например, следующая команда ищет в каждом каталоге диска C файлы, в названии которых присутствует строка «Log», и выводит их постранично на экран:
dir c:\ /s /b | find "LOG" | more
Наличие канала (|) указывает Cmd.exe, что выход команды dir нужно отправить команде-фильтру find. Команда find выбирает только те имена файлов, в которых содержится строка «LOG». Команда more выводит на экран имена файлов, полученные командой find с паузой после заполнения каждого экрана.
понедельник, 10 ноября 2014 г.
Бегущая строка
http://htmlka.com/begushhaya-stroka/
Тег marquee, задающий бегущую строку, придуман когда-то для Internet Exlorer и другие для ЖЖ: «HTML-тэг marquee теперь вырезается из текста комментария при отображении (т.е. сам текст будет отображаться, но он не будет анимирован или скрыт).»
http://masscode.ru/index.php/k2/item/44-limarquee
браузеры не всегда корректно отображают работу различных его атрибутов.
Плагин liMarquee является аналогом тега «marquee» и также как и он не ограничивается строками и позволяет перемещать (скролировать) любые элементы веб-страницы — изображения, текст, таблицы, элементы форм и т.д.
Но в отличии от тега «marquee», liMarquee имеет ряд преимуществ таких как:
1. Перемещение можно задать не только по горизонтали, но и вертикали (в любом направлении).
2. Бегущая строка liMarquee останавливается при наведении курсора мыши.
3. Бегущую строку можно двигать мышью и перемещать на удобную для чтения или просмотра позицию
4. Возможна подгрузка текста из XML файла.
5. Возможно динамическое изменение скорости и мн.др.
http://l2w.narod.ru/TextBook/RunningString.html
Тег marquee, задающий бегущую строку, придуман когда-то для Internet Exlorer и другие для ЖЖ: «HTML-тэг marquee теперь вырезается из текста комментария при отображении (т.е. сам текст будет отображаться, но он не будет анимирован или скрыт).»
http://masscode.ru/index.php/k2/item/44-limarquee
браузеры не всегда корректно отображают работу различных его атрибутов.
Плагин liMarquee является аналогом тега «marquee» и также как и он не ограничивается строками и позволяет перемещать (скролировать) любые элементы веб-страницы — изображения, текст, таблицы, элементы форм и т.д.
Но в отличии от тега «marquee», liMarquee имеет ряд преимуществ таких как:
1. Перемещение можно задать не только по горизонтали, но и вертикали (в любом направлении).
2. Бегущая строка liMarquee останавливается при наведении курсора мыши.
3. Бегущую строку можно двигать мышью и перемещать на удобную для чтения или просмотра позицию
4. Возможна подгрузка текста из XML файла.
5. Возможно динамическое изменение скорости и мн.др.
http://l2w.narod.ru/TextBook/RunningString.html
Создание и вставка бегущей строки в HTML документе.
Бегущая строка в тексте документа является одним из легких способов оживить Web-страницу. Бегущие объекты всегда привлекают внимание, и пользователь обязательно прочтет что там написано. Так же бегущую строку можно применять, там где мало места. Но не следует злоупотреблять экономией места. Помните, что посетитель может просто не дождаться, когда в бегущей строке отобразится весь текст сообщения.Бегущая строка создаётся с помощью контейнера тэгов <marquee>...</marquee> со следующими атрибутами:
- width="..." - ширина бегущей строки в пикселях или процентах от ширины экрана.
- height="..." - высота бегущей строки в пикселях или процентах. (Если вы делаете бегущую строку в одну строчку, то можно высоту не указывать, она сама подбирается под размер букв).
- bgcolor="..." - определяет цвет фона бегущей строки.
- behavior="..." задает тип движения (поведение) бегущей строки и имеет
следующие значения:
- scroll - циклическая прокрутка текста из одного конца в другой
- slide - текст появляется с одного края и останавливается у другого.
- alternate - текст перемещается от одного края к другому и обратно.
- direction="..." - определяет направление движения бегущей строки.
Имеет следующие значения:
- left - текст движется влево по строке
- right - текст движется вправо по строке
- up - вся строка перемещается снизу вверх
- down - строка движется сверху вниз
- scrollamount="..." - шаг перемещения в строке в пикселах, на который
перемещается текст за заданный интервал времени. Например:
- scrollamount="1"
- scrollamount="2"
- scrollamount="2" - scrolldelay="..." - Этот атрибут задаёт
временной интервал между шагами бегущей строки в миллисекундах.
Например:
- scrolldelay="100"
- scrolldelay="200"
- scrolldelay="300" - loop="..." - задаёт число проходов текста бегущей строки. По умолчанию или при указании значения -1 (infinite) броузер будет прокручивать текст бесконечное число раз.
- hspace="..." - Этот атрибут задает поле в пикселах справа и слева от
бегущей строки.
- hspace="10"
- hspace="0" - vspace="..." - Этот атрибут задает отступ в пикселах выше и ниже бегущей строки.
- hspace="0"
- hspace="10"
<marquee loop="infinite" behavior="altemate"
bgcolor="aqua" direction="right" height="50" width="250">
Пример бегущей строки.
</marquee>
А так выглядит результат этого кода: 