IE是否经常中毒?推荐您 <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"><script language="javascript1.1" src="http://pagead2.googlesyndication.com/cpa/ads?client=ca-pub-5499099499828942&cpa_choice=caaqscq1_weach4xelojyecfkom84ycb&oe=gb2312&dt=1185608432437&lmt=1178707059&prev_fmts=468x60_as_rimg&format=ref_text&output=textlink&correlator=1185608431843&url=http%3a%2f%2fwww.linuxdby.com%2fhtml%2flinux%2fother%2f20070509%2f39188.html&region=_google_cpa_region_&ref=http%3a%2f%2fwww.baidu.com%2fs%3fwd%3dshell%2b%25b6%25c1%25ce%25c4%25bc%25fe%26lm%3d0%26si%3d%26rn%3d10%26ie%3dgb2312%26ct%3d0%26cl%3d3%26f%3d1%26rsp%3d1&cc=319&flash=9&u_h=768&u_w=1024&u_ah=738&u_aw=1024&u_cd=32&u_tz=480&u_java=true" type="text/javascript"></script>type="text/javascript"> 下载带有 Google 工具栏的 Firefox, 上网冲浪更惬意 | |
name="google_ads_frame" marginwidth="0" marginheight="0" src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-5499099499828942&dt=1185608433015&lmt=1178707059&prev_fmts=120x90_0ads_al_s&format=468x60_as&output=html&correlator=1185608431843&channel=4763637743&url=http%3A%2F%2Fwww.linuxdby.com%2Fhtml%2Flinux%2Fother%2F20070509%2F39188.html&color_bg=FFFFFF&color_text=000000&color_link=000000&color_url=000000&color_border=FFFFFF&ad_type=text_image&ref=http%3A%2F%2Fwww.baidu.com%2Fs%3Fwd%3Dshell%2B%25B6%25C1%25CE%25C4%25BC%25FE%26lm%3D0%26si%3D%26rn%3D10%26ie%3Dgb2312%26ct%3D0%26cl%3D3%26f%3D1%26rsp%3D1&cc=319&flash=9&u_h=768&u_w=1024&u_ah=738&u_aw=1024&u_cd=32&u_tz=480&u_java=true" frameborder="0" width="468" scrolling="no" height="60" allowtransparency="allowtransparency"> 以KSH为例: #!/usr/bin/ksh # # SCRIPT: 12_ways_to_parse.ksh.ksh # # # REV: 1.2.A # # PURPOSE: This script shows the different ways of reading # a file line by line. Again there is not just one way # to read a file line by line and some are faster than # others and some are more intuitive than others. # # REV LIST: # # 03/15/2002 - Randy Michael # Set each of the while loops up as functions and the timing # of each function to see which one is the fastest. # ####################################################################### # # NOTE: To output the timing to a file use the following syntax: # # 12_ways_to_parse.ksh file_to_process > output_file_name 2>&1 # # The actaul timing data is sent to standard error, file # descriptor (2), and the function name header is sent # to standard output, file descriptor (1). # ####################################################################### # # set -n # Uncomment to check command syntax without any execution # set -x # Uncomment to debug this script # FILENAME="$1" TIMEFILE="/tmp/loopfile.out" >$TIMEFILE THIS_SCRIPT=$(basename $0) ###################################### function usage { echo "/nUSAGE: $THIS_SCRIPT file_to_process/n" echo "OR - To send the output to a file use: " echo "/n$THIS_SCRIPT file_to_process > output_file_name 2>&1 /n" exit 1 } ###################################### function while_read_LINE { cat $FILENAME | while read LINE do echo "$LINE" : done } ###################################### function while_read_LINE_bottom { while read LINE do echo "$LINE" : done < $FILENAME } ###################################### function while_line_LINE_bottom { while line LINE do echo $LINE : done < $FILENAME } ###################################### function cat_while_LINE_line { cat $FILENAME | while LINE=`line` do echo "$LINE" : done } ###################################### function while_line_LINE { cat $FILENAME | while line LINE do echo "$LINE" : done } ###################################### function while_LINE_line_bottom { while LINE=`line` do echo "$LINE" : done < $FILENAME } ###################################### function while_LINE_line_cmdsub2 { cat $FILENAME | while LINE=$(line) do echo "$LINE" : done } ###################################### function while_LINE_line_bottom_cmdsub2 { while LINE=$(line) do echo "$LINE" : done < $FILENAME } ###################################### function while_read_LINE_FD { exec 3<&0 exec 0< $FILENAME while read LINE do echo "$LINE" : done exec 0<&3 } ###################################### function while_LINE_line_FD { exec 3<&0 exec 0< $FILENAME while LINE=`line` do echo "$LINE" : done exec 0<&3 } ###################################### function while_LINE_line_cmdsub2_FD { exec 3<&0 exec 0< $FILENAME while LINE=$(line) do print "$LINE" : done exec 0<&3 } ###################################### function while_line_LINE_FD { exec 3<&0 exec 0< $FILENAME while line LINE do echo "$LINE" : done exec 0<&3 } ###################################### ########### START OF MAIN ############ ###################################### # Test the Input # Looking for exactly one parameter (( $# == 1 )) || usage # Does the file exist as a regular file? [[ -f $1 ]] || usage echo "/nStarting File Processing of each Method/n" echo "Method 1:" echo "/nfunction while_read_LINE/n" >> $TIMEFILE echo "function while_read_LINE" time while_read_LINE >> $TIMEFILE echo "/nMethod 2:" echo "/nfunction while_read_LINE_bottom/n" >> $TIMEFILE echo "function while_read_LINE_bottom" time while_read_LINE_bottom >> $TIMEFILE echo "/nMethod 3:" echo "/nfunction while_line_LINE_bottom/n" >> $TIMEFILE echo "function while_line_LINE_bottom" time while_line_LINE_bottom >> $TIMEFILE echo "/nMethod 4:" echo "/nfunction cat_while_LINE_line/n" >> $TIMEFILE echo "function cat_while_LINE_line" time cat_while_LINE_line >> $TIMEFILE echo "/nMethod 5:" echo "/nfunction while_line_LINE/n" >> $TIMEFILE echo "function while_line_LINE" time while_line_LINE >> $TIMEFILE echo "/nMethod 6:" echo "/nfunction while_LINE_line_bottom/n" >> $TIMEFILE echo "function while_LINE_line_bottom" time while_LINE_line_bottom >> $TIMEFILE echo "/nMethod 7:" echo "/nfunction while_LINE_line_cmdsub2/n" >> $TIMEFILE echo "function while_LINE_line_cmdsub2" time while_LINE_line_cmdsub2 >> $TIMEFILE echo "/nMethod 8:" echo "/nfunction while_LINE_line_bottom_cmdsub2/n" >> $TIMEFILE echo "function while_LINE_line_bottom_cmdsub2" time while_LINE_line_bottom_cmdsub2 >> $TIMEFILE echo "/nMethod 9:" echo "/nfunction while_read_LINE_FD/n" >> $TIMEFILE echo "function while_read_LINE_FD" time while_read_LINE_FD >> $TIMEFILE echo "/nMethod 10:" echo "/nfunction while_LINE_line_FD/n" >> $TIMEFILE echo "function while_LINE_line_FD" time while_LINE_line_FD >> $TIMEFILE echo "/nMethod 11:" echo "/nfunction while_LINE_line_cmdsub2_FD/n" >> $TIMEFILE echo "function while_LINE_line_cmdsub2_FD" time while_LINE_line_cmdsub2_FD >> $TIMEFILE echo "/nMethod 12:" echo "/nfunction while_line_LINE_FD/n" >> $TIMEFILE echo "function while_line_LINE_FD" time while_line_LINE_FD >> $TIMEFILE |
shell下十二种读文件的方法
最新推荐文章于 2023-07-06 10:46:42 发布