はい、表示した場合に1、それが決定され、/ etc / inittabファイルには、100より大きい行での「/ etc / inittabのは大きなファイルです。」が表示人が「の/ etc / inittabファイルは小さなファイルです。」か
#!/ binに/ bashのの
#の
行は、= `トイレ-lの/ etc / inittab`
エコーLINES
FINLINESは=` $ LINESをエコー| 「-f1`「-dカット
エコー$ FINLINES
[$ FINLINES -gt 100] &&エコー"は/ etc / inittabの大きなファイルです。" || 「/ etc / inittabファイルは小さなファイルです。」エコー
図2は、ユーザが指定した、ユーザが管理者である場合、ユーザは、それは。それ以外の場合は、「ユーザーが管理者である」表示されるか決定するためにである「利用者が正規の利用者です。」
#!/ binに/ bashのの
#の
USERID = 'ID -u $ 1`
であれば[$のUSERID -eq 0]; その後、
エコー、「管理者は、」
他に
「共通のユーザーを。」エコー
Fiの
図3は、ファイルが存在するかどうかを判断します
#!/ binに/ bashの
[-e $ 1]の#if。その後、
「ファイルが存在しています。」エコー
他
エコー「ファイルが存在しません。」
Fiの
[ユーザーおよびBashを示すもの]; 4、システムは、その場合、そのような複数のユーザを表示し、デフォルトのシェルbashのプログラムかどうか、現在のユーザーかどうかを判断するそうでなければそのようなユーザーを示しませんでした
#/ binに/ bashの!
#
BASHLINE = `grepの"バッシュ$"/ etc / passwdファイル| トイレ-l`
もし[$ BASHLINE -eq 0]; そして、
「私たちは、/ binに/ bashのユーザーを持っていません。」エコー
他
エコー「我々は$ BASHLINEのユーザーを持って、この数は$ BASHLINEです。」
:| " '' -f1カット-d grepをbashの$ / etc / passwdファイル"エコー
Fiの
5、例えば、ファイルを与えられた、スクリプトを記述します。/ etc / inittabを、空白行がファイル内に存在するかどうかを判断するために?B、もしそうであれば、その行番号空白行を表示し、そうでなければ空行が存在しません
#!/ binに/ bashの
#
SPACELINEは= `grepの"^ $" $ 1 | トイレ-l`
もし[$のSPACELINE -eq 0]; そして、
「このファイルは空白行を持っていません。」エコー
他
エコー「このファイルは$ SPACELINEスペースを持っているline.This数は$ SPACELINEです。」
Fiの
6、それ以外の場合は「悪い人」であり、UIDとGIDは、場合と同様、のような、ユーザが「良い人」であることを示しているかどうかを決定するために、ユーザ指定されたスクリプトを書きます
#!/ binに/ bashのの
#の
USERID = 'ID -u $ 1`
GRPID =' ID -g $ 1`
[$ USERID -eq $ GRPID]であれば、次に
エコー"良い男を。"
他に
「悪い男。」エコー
Fiの
7、自分のパスワードの警告期間を得るために、ユーザが与えられ、スクリプトを記述し、今日はすでに警告期間に満たない場合は、ユーザーがタイムパスワードから最後に変更されたかどうかを判断します。
#!/ binに/ bashのの
#の
W = `grepの"ABC"の/ etc /影| -dカット:-f6`
S = `日付+%S`
T =` exprのする$ S / 86400`
L = `grepの"^ ABCの"/ etc /影を| -dカット:-f5`
N = `grepの"^ ABCの"/ etc /影| -d切断:-f3`
SY = $ [$ 1 - $ [$ T- $ N]
場合は、[$ SYは-lt - $のW]; その後、
「Worningを」エコー
他に
「OK」エコー
Fiを提供して
より大きく、それ以外の場合はOKが表示され、「いくつかのコマンドが消えます」場合は、合計でコマンド履歴のコマンドの履歴を決定する8は、1000個のエントリよりも大きく、
#!/ binに/ bashのの
#1
HISTLINE = `歴史| トイレ-l`
もし[$ HISTLINE -ge 1000年]。その後、
「いくつかのコマンドが消えます。」エコー
他に
「OK」エコー
Fiを提供して
ファイルがディレクトリである場合、通常のファイルは、ショーでも、表示された場合は9、ファイル与えられ、それ以外の場合は、「認識しない」が表示さ
#!/ binに/ bashのの
#
[あれば!] $ 1 -e。そして、
「そのようなファイルを。」エコーません
6番出口
Fiの
[-f $ 1]であれば、その後、
「共通ファイルを。」エコー
elifの[$ 1 -d]。その後、
「ディレクトリ」をエコー
他に
「不明。」エコー
Fiの
10、それ以外の場合は、「そのようなファイルを」表示しない、このパラメータは、「OK」を表示上の既存のファイルがあるかどうかを判断するためのパラメータ(ファイルパス)を受け入れることができますスクリプトを書きます
#!/ binに/ bashのの
#
の場合[$#-lt 1]; その後、
"./JudgeFile2.sh AG1 [AG2 ...]使用法"エコー
7番出口
Fiを提供して
、[-e $ 1]場合。その後、
「OK。」エコー
他に
「そのようなファイルを。」エコーません
Fiの
11、スクリプトを記述したスクリプトに2つのパラメータを渡し、製品二つの両方を表示
#!/ binに/ bashのの
#
の場合[$#-lt 2]。その後、
"使用方法:cacl.sh ARG1 ARG2"エコー
8番出口
Fi回線
エコー"の合計は、次のとおりです。$ [$ 1 + $ 2]"
エコー"PRODは次のとおりです。$ [$ 1 * $ 2]"