百度指令碼筆試題兩道

2021-09-01 14:26:53 字數 1102 閱讀 2300

1、寫指令碼實現,可以用shell、perl等。在目錄/tmp下找到100個以abc開頭的檔案,然後把這些檔案的第一行儲存到檔案new中。

2、寫指令碼實現,可以用shell、perl等。把檔案b中有的,但是檔案a中沒有的所有行,儲存為檔案c,並統計c的行數。

解答思路:

1:覺得用shell更好一些,**如下

#!/bin/sh

for filename in

`find

/tmp -type f -name

"abc*"

|head

-n100`do

sed-n

'1p'

$filename

>>new

done

注釋:第一,用到了find命令,其中-type f表示選取普通檔案,-name用於設定檔名;第二,head -n 100命令用於取出前100項。第三,sed -n 』1p』用於取出檔案的第一行內容。第四,>>new表示追加到檔案new中。

2:第二個題目還是用perl更方便一些,**如下:

[rocrocket@wupengchong shellstudy]$ cat roc.pl

#!/usr/bin/perl -w

open b,

"ordie

"b error.($!)"

;open c,

">c"

ordie

"c error.($!)";my

$find=0

;my($myb

,$mya);

while()

}if($find==0

)}close a;

close b;

close c;

$linenum

=`cat c|wc -l`

;print

"c line count:"

,$linenum

;

百度指令碼筆試題兩道

1 寫指令碼實現,可以用shell perl等。在目錄 tmp下找到100個以abc開頭的檔案,然後把這些檔案的第一行儲存到檔案new中。2 寫指令碼實現,可以用shell perl等。把檔案b中有的,但是檔案a中沒有的所有行,儲存為檔案c,並統計c的行數。解答思路 1 覺得用shell更好一些,如...

百度指令碼筆試題兩道

1 寫指令碼實現,可以用shell perl等。在目錄 tmp下找到100個以abc開頭的檔案,然後把這些檔案的第一行儲存到檔案new中。2 寫指令碼實現,可以用shell perl等。把檔案b中有的,但是檔案a中沒有的所有行,儲存為檔案c,並統計c的行數。解答思路 1 覺得用shell更好一些,如...

演算法 兩道百度筆試題

o n 和o 1 其實開始的時候我也是一頭霧水,在紙上畫畫之後發現,其實就是一道變形的插入排序。幸運的是這裡不需要比較大小,要比較大小的話時間複雜度是o n2 只用判斷正負,那時間複雜度就只要o n 了。如 3,1,2,1 3,4 其實就是把正數後面的第乙個負數 如 1 插到第乙個正數 1 的前面,...