⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dosbatch.html

📁 一本完整的描述Unix Shell 编程的工具书的所有范例
💻 HTML
📖 第 1 页 / 共 2 页
字号:
>/dev/lp0</TT></TD><TDALIGN="LEFT"VALIGN="TOP">first printer device</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">COM1</TT></TD><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="FILENAME">/dev/ttyS0</TT></TD><TDALIGN="LEFT"VALIGN="TOP">first serial port</TD></TR></TBODY></TABLE><HR></DIV><P>Batch files usually contain DOS commands. These must be	translated into their UNIX equivalents in order to convert a	batch file into a shell script.</P><DIVCLASS="TABLE"><HR><ANAME="AEN18532"></A><P><B>Table L-2. DOS commands and their UNIX equivalents</B></P><TABLEBORDER="1"CLASS="CALSTABLE"><THEAD><TR><THALIGN="LEFT"VALIGN="TOP">DOS Command</TH><THALIGN="LEFT"VALIGN="TOP">UNIX Equivalent</TH><THALIGN="LEFT"VALIGN="TOP">Effect</TH></TR></THEAD><TBODY><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">ASSIGN</TT></TD><TDALIGN="LEFT"VALIGN="TOP">ln</TD><TDALIGN="LEFT"VALIGN="TOP">link file or directory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">ATTRIB</TT></TD><TDALIGN="LEFT"VALIGN="TOP">chmod</TD><TDALIGN="LEFT"VALIGN="TOP">change file permissions</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">CD</TT></TD><TDALIGN="LEFT"VALIGN="TOP">cd</TD><TDALIGN="LEFT"VALIGN="TOP">change directory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">CHDIR</TT></TD><TDALIGN="LEFT"VALIGN="TOP">cd</TD><TDALIGN="LEFT"VALIGN="TOP">change directory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">CLS</TT></TD><TDALIGN="LEFT"VALIGN="TOP">clear</TD><TDALIGN="LEFT"VALIGN="TOP">clear screen</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">COMP</TT></TD><TDALIGN="LEFT"VALIGN="TOP">diff, comm, cmp</TD><TDALIGN="LEFT"VALIGN="TOP">file compare</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">COPY</TT></TD><TDALIGN="LEFT"VALIGN="TOP">cp</TD><TDALIGN="LEFT"VALIGN="TOP">file copy</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">Ctl-C</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Ctl-C</TD><TDALIGN="LEFT"VALIGN="TOP">break (signal)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">Ctl-Z</TT></TD><TDALIGN="LEFT"VALIGN="TOP">Ctl-D</TD><TDALIGN="LEFT"VALIGN="TOP">EOF (end-of-file)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">DEL</TT></TD><TDALIGN="LEFT"VALIGN="TOP">rm</TD><TDALIGN="LEFT"VALIGN="TOP">delete file(s)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">DELTREE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">rm -rf</TD><TDALIGN="LEFT"VALIGN="TOP">delete directory recursively</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">DIR</TT></TD><TDALIGN="LEFT"VALIGN="TOP">ls -l</TD><TDALIGN="LEFT"VALIGN="TOP">directory listing</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">ERASE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">rm</TD><TDALIGN="LEFT"VALIGN="TOP">delete file(s)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">EXIT</TT></TD><TDALIGN="LEFT"VALIGN="TOP">exit</TD><TDALIGN="LEFT"VALIGN="TOP">exit current process</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">FC</TT></TD><TDALIGN="LEFT"VALIGN="TOP">comm, cmp</TD><TDALIGN="LEFT"VALIGN="TOP">file compare</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">FIND</TT></TD><TDALIGN="LEFT"VALIGN="TOP">grep</TD><TDALIGN="LEFT"VALIGN="TOP">find strings in files</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">MD</TT></TD><TDALIGN="LEFT"VALIGN="TOP">mkdir</TD><TDALIGN="LEFT"VALIGN="TOP">make directory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">MKDIR</TT></TD><TDALIGN="LEFT"VALIGN="TOP">mkdir</TD><TDALIGN="LEFT"VALIGN="TOP">make directory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">MORE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">more</TD><TDALIGN="LEFT"VALIGN="TOP">text file paging filter</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">MOVE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">mv</TD><TDALIGN="LEFT"VALIGN="TOP">move</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">PATH</TT></TD><TDALIGN="LEFT"VALIGN="TOP">$PATH</TD><TDALIGN="LEFT"VALIGN="TOP">path to executables</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">REN</TT></TD><TDALIGN="LEFT"VALIGN="TOP">mv</TD><TDALIGN="LEFT"VALIGN="TOP">rename (move)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">RENAME</TT></TD><TDALIGN="LEFT"VALIGN="TOP">mv</TD><TDALIGN="LEFT"VALIGN="TOP">rename (move)</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">RD</TT></TD><TDALIGN="LEFT"VALIGN="TOP">rmdir</TD><TDALIGN="LEFT"VALIGN="TOP">remove directory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">RMDIR</TT></TD><TDALIGN="LEFT"VALIGN="TOP">rmdir</TD><TDALIGN="LEFT"VALIGN="TOP">remove directory</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">SORT</TT></TD><TDALIGN="LEFT"VALIGN="TOP">sort</TD><TDALIGN="LEFT"VALIGN="TOP">sort file</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">TIME</TT></TD><TDALIGN="LEFT"VALIGN="TOP">date</TD><TDALIGN="LEFT"VALIGN="TOP">display system time</TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">TYPE</TT></TD><TDALIGN="LEFT"VALIGN="TOP">cat</TD><TDALIGN="LEFT"VALIGN="TOP">output file to <TTCLASS="FILENAME">stdout</TT></TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"><TTCLASS="OPTION">XCOPY</TT></TD><TDALIGN="LEFT"VALIGN="TOP">cp</TD><TDALIGN="LEFT"VALIGN="TOP">(extended) file copy</TD></TR></TBODY></TABLE><HR></DIV><DIVCLASS="NOTE"><TABLECLASS="NOTE"WIDTH="100%"BORDER="0"><TR><TDWIDTH="25"ALIGN="CENTER"VALIGN="TOP"><IMGSRC="common/note.png"HSPACE="5"ALT="Note"></TD><TDALIGN="LEFT"VALIGN="TOP"><P>Virtually all UNIX and shell operators and commands have	many more options and enhancements than their DOS and batch file	equivalents.  Many DOS batch files rely on auxiliary utilities,	such as <BCLASS="COMMAND">ask.com</B>, a crippled counterpart to	<AHREF="internal.html#READREF">read</A>.</P><P>DOS supports a very limited and incompatible subset of	filename <AHREF="globbingref.html">wildcard expansion</A>,	recognizing only the <SPANCLASS="TOKEN">*</SPAN> and <SPANCLASS="TOKEN">?</SPAN>	characters.</P></TD></TR></TABLE></DIV><P>Converting a DOS batch file into a shell script is generally	straightforward, and the result ofttimes reads better than the	original.</P><DIVCLASS="EXAMPLE"><HR><ANAME="VIEWDAT"></A><P><B>Example L-1. VIEWDATA.BAT: DOS Batch File</B></P><TABLEBORDER="0"BGCOLOR="#E0E0E0"WIDTH="100%"><TR><TD><PRECLASS="PROGRAMLISTING">   1&nbsp;REM VIEWDATA   2&nbsp;   3&nbsp;REM INSPIRED BY AN EXAMPLE IN "DOS POWERTOOLS"   4&nbsp;REM                           BY PAUL SOMERSON   5&nbsp;   6&nbsp;   7&nbsp;@ECHO OFF   8&nbsp;   9&nbsp;IF !%1==! GOTO VIEWDATA  10&nbsp;REM  IF NO COMMAND-LINE ARG...  11&nbsp;FIND "%1" C:\BOZO\BOOKLIST.TXT  12&nbsp;GOTO EXIT0  13&nbsp;REM  PRINT LINE WITH STRING MATCH, THEN EXIT.  14&nbsp;  15&nbsp;:VIEWDATA  16&nbsp;TYPE C:\BOZO\BOOKLIST.TXT | MORE  17&nbsp;REM  SHOW ENTIRE FILE, 1 PAGE AT A TIME.  18&nbsp;  19&nbsp;:EXIT0</PRE></TD></TR></TABLE><HR></DIV><P>The script conversion is somewhat of an improvement.</P><DIVCLASS="EXAMPLE"><HR><ANAME="VIEWDATA"></A><P><B>Example L-2. viewdata.sh: Shell Script Conversion of VIEWDATA.BAT</B></P><TABLEBORDER="0"BGCOLOR="#E0E0E0"WIDTH="100%"><TR><TD><PRECLASS="PROGRAMLISTING">   1&nbsp;#!/bin/bash   2&nbsp;# viewdata.sh   3&nbsp;# Conversion of VIEWDATA.BAT to shell script.   4&nbsp;   5&nbsp;DATAFILE=/home/bozo/datafiles/book-collection.data   6&nbsp;ARGNO=1   7&nbsp;   8&nbsp;# @ECHO OFF                 Command unnecessary here.   9&nbsp;  10&nbsp;if [ $# -lt "$ARGNO" ]    # IF !%1==! GOTO VIEWDATA  11&nbsp;then  12&nbsp;  less $DATAFILE          # TYPE C:\MYDIR\BOOKLIST.TXT | MORE  13&nbsp;else  14&nbsp;  grep "$1" $DATAFILE     # FIND "%1" C:\MYDIR\BOOKLIST.TXT  15&nbsp;fi    16&nbsp;  17&nbsp;exit 0                    # :EXIT0  18&nbsp;  19&nbsp;#  GOTOs, labels, smoke-and-mirrors, and flimflam unnecessary.  20&nbsp;#  The converted script is short, sweet, and clean,  21&nbsp;#+ which is more than can be said for the original.</PRE></TD></TR></TABLE><HR></DIV><P>Ted Davis' <AHREF="http://www.maem.umr.edu/~batch/"TARGET="_top">Shell	Scripts on the PC</A> site has a set of comprehensive	tutorials on the old-fashioned art of batch file	programming. Certain of his ingenious techniques could conceivably	have relevance for shell scripts.</P></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLEWIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="sample-bashrc.html">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="index.html">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="exercises.html">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">A Sample <TTCLASS="FILENAME">.bashrc</TT> File</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top">&nbsp;</TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">Exercises</TD></TR></TABLE></DIV></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -