我是大帅哥,擅长LINUX和C语言,还有脚本,希望和大家交朋友
mail:newhitler@163.com
《bash shell》练习题
上一篇 / 下一篇 2007-07-22 22:29:21 / 个人分类:LINUX系统
1).更改Shell
9A!Q~%gfB(t$BJ)XP01.1).利用PS1变量改变命令提示,新提示符包括使用者帐号名称,主机名,完整路径,时间,历史命令个数
'HUF2AH.Kx01.2).更改ls显示目录文件的颜色为白色字体,蓝色背景
Dd:S;kGA0
u&|3O~ H0参考答案:
q{6g&]8G\u,f0PS1='[\u@\h \w \A #\#]\$ '
'chUz?0echo $LS_COLORSLUPA开源社区W"LEVn8H K#x|
declare -x LS_COLORS=$LS_COLORS:"di=00;37;44"LUPA开源社区I[YO G0w*q
LUPA开源社区XTS$O5P(Fa,Q'L
LUPA开源社区,P/L\D9M*F!?n nE:w
2).显示本SHELL的PID值LUPA开源社区 }PdU9xw-s
?/HL'c"~3T0参考答案:
*a3L R[T5En0echo $$LUPA开源社区ddf e(O
LUPA开源社区&E.S*YFoha.n-c0j
LUPA开源社区(R_-\ P4{%}^6@4w[
3).显示上个命令的回传码LUPA开源社区Wk6u5y.O {
LUPA开源社区'Y0Sg*gaB$N D#@ U-t
参考答案:LUPA开源社区 hH5r/I#t!Hs
echo $?LUPA开源社区6^g cc|A-s
LUPA开源社区`$z'y9j$c-z0d0u
,~{KH0o bj b LP/r-n04).提示使用者 30 秒內输入自己的名字,将该输入字串做成 named 变量LUPA开源社区O#M/W^I3G2p Ww)i
LUPA开源社区 qA;~ }s LL
参考答案:LUPA开源社区dS6d5u$sa
read -p "Please keyin your name: " -t 30 namedLUPA开源社区4z7xb-e3Y7JKe
LUPA开源社区D7V9]_3Jh/M Yw
LUPA开源社区$_*L lp,_ S:x
5).变量运算LUPA开源社区*T2@"@A a.s!z
5.1).进行 100+300+50 的加运算,将结果存入数值变量sumLUPA开源社区9G&H(W _I { yW7g$|
5.2).定义a=3,b=5,输出a+b的和
ZRYJgj9B05.3).显示输出Your cost is $5.00
(o:`_ gd?0
(Lw5`Fw.a7aQ0参考答案:
'H#`X1q1HC:Lz_`#U+z0declare -i sum=100+300+50LUPA开源社区!u[o$C { TmC8Z
echo $sumLUPA开源社区Ght Q;v:a`a
7u&v*`8I]F`WfPY0a=3LUPA开源社区fRfI0u Q
b=5
u5y4aw,q0_ o6r0echo $[$a + $b]
_Az^cK0
^!B3CjW7b)W0echo Your cost is \$5.00
,^4Z@*E3Y ]1i(_0LUPA开源社区 ^sl7k'[
LUPA开源社区7i? eTfUO3e
d.XET ]B06).让sum变量变成环境变量
2V}e%Q)w NR0
q q`u,l/~F0参考答案:LUPA开源社区"} kiY6b
declare -x sum
u]A)`+y:`,o'n.m;]f0export|grep sumLUPA开源社区5dArc)zm*TK4_,XZ
,f&K)f.uw,t w0
:n3G/Xm1OQu;iF07).将sum变量变成只读变量
7\D%kW6q7J:d0
T5UB \ le0参考答案:
5b7T3sw HjI3d+t0declare -r sum
do#N)E$A{BAY0sum=love
\#GP3aY3cr0 LUPA开源社区 hSQ4c4C
LUPA开源社区"D*aG5xYz|6`vT
8).立即将当前的历史命令写到history档案中LUPA开源社区 L7y.v#p+v
*v \,lM };Y0参考答案:LUPA开源社区qaV#IQ
history -wLUPA开源社区n!w#[\BM
LUPA开源社区FdL KsIl y`
LUPA开源社区5~$}['F/D)B"m\ z
9).显示所有stty的参数,将erase更改为ctrl+h
xK$s E`\0
y/v:K-h$Ts%w+p0参考答案:
w:Y#SfN5RQ0stty -aLUPA开源社区#]hE&Q.Hu%I8I
stty erase ^hLUPA开源社区UH9j^[
LUPA开源社区] sG1V D3T$O Z4q
w%Sw-U%[010).将erase更改为默认的后退键(backspace)
,s)^h+U_gQ,y0 LUPA开源社区m&zrv:C9F)yO
参考答案:
hl!h[*]0stty erase ^?LUPA开源社区Q\w2H0DAU
LUPA开源社区e3v \3Vs!ZV?
LUPA开源社区-T [p}*i:_-jT
11).打印PATH 变量的第五个路径LUPA开源社区*d'boK)aH[nQ]
|C7_Qu7ye:}TR)K0参考答案:LUPA开源社区s7r G:J~L
echo $PATH|cut -d ':' -f 5LUPA开源社区u Zi(^!^)V&LbDM}W
LUPA开源社区t B m8]4q'Q
LUPA开源社区-I/j!A9B].Wwk
12).打印PATH变量的第3列与第5列
$ly-n ^)W+Xf0 LUPA开源社区fU+S8n \'[3y9K}0U
参考答案:
?8ps6Uv^ X0echo $PATH | cut -d ':' -f 3,5
$A1@9Fpi.i0
Ba1B:GC;l S0
X[%@3J6u{:^[:Q013).输出export命令的信息,但要求是每行第12字符以后的字串LUPA开源社区c E)OEW+@2b*[g
uh'J%Lo1Jw\w0参考答案:LUPA开源社区DCjnHp7r-C
export | cut -c 12-
rv$A[r(G0
9A!Q~%gfB(t$BJ)XP01.1).利用PS1变量改变命令提示,新提示符包括使用者帐号名称,主机名,完整路径,时间,历史命令个数
'HUF2AH.Kx01.2).更改ls显示目录文件的颜色为白色字体,蓝色背景
Dd:S;kGA0
u&|3O~ H0参考答案:
q{6g&]8G\u,f0PS1='[\u@\h \w \A #\#]\$ '
'chUz?0echo $LS_COLORSLUPA开源社区W"LEVn8H K#x|
declare -x LS_COLORS=$LS_COLORS:"di=00;37;44"LUPA开源社区I[YO G0w*q
LUPA开源社区XTS$O5P(Fa,Q'L
LUPA开源社区,P/L\D9M*F!?n nE:w
2).显示本SHELL的PID值LUPA开源社区 }PdU9xw-s
?/HL'c"~3T0参考答案:
*a3L R[T5En0echo $$LUPA开源社区ddf e(O
LUPA开源社区&E.S*YFoha.n-c0j
LUPA开源社区(R_-\ P4{%}^6@4w[
3).显示上个命令的回传码LUPA开源社区Wk6u5y.O {
LUPA开源社区'Y0Sg*gaB$N D#@ U-t
参考答案:LUPA开源社区 hH5r/I#t!Hs
echo $?LUPA开源社区6^g cc|A-s
LUPA开源社区`$z'y9j$c-z0d0u
,~{KH0o bj b LP/r-n04).提示使用者 30 秒內输入自己的名字,将该输入字串做成 named 变量LUPA开源社区O#M/W^I3G2p Ww)i
LUPA开源社区 qA;~ }s LL
参考答案:LUPA开源社区dS6d5u$sa
read -p "Please keyin your name: " -t 30 namedLUPA开源社区4z7xb-e3Y7JKe
LUPA开源社区D7V9]_3Jh/M Yw
LUPA开源社区$_*L lp,_ S:x
5).变量运算LUPA开源社区*T2@"@A a.s!z
5.1).进行 100+300+50 的加运算,将结果存入数值变量sumLUPA开源社区9G&H(W _I { yW7g$|
5.2).定义a=3,b=5,输出a+b的和
ZRYJgj9B05.3).显示输出Your cost is $5.00
(o:`_ gd?0
(Lw5`Fw.a7aQ0参考答案:
'H#`X1q1HC:Lz_`#U+z0declare -i sum=100+300+50LUPA开源社区!u[o$C { TmC8Z
echo $sumLUPA开源社区Ght Q;v:a`a
7u&v*`8I]F`WfPY0a=3LUPA开源社区fRfI0u Q
b=5
u5y4aw,q0_ o6r0echo $[$a + $b]
_Az^cK0
^!B3CjW7b)W0echo Your cost is \$5.00
,^4Z@*E3Y ]1i(_0LUPA开源社区 ^sl7k'[
LUPA开源社区7i? eTfUO3e
d.XET ]B06).让sum变量变成环境变量
2V}e%Q)w NR0
q q`u,l/~F0参考答案:LUPA开源社区"} kiY6b
declare -x sum
u]A)`+y:`,o'n.m;]f0export|grep sumLUPA开源社区5dArc)zm*TK4_,XZ
,f&K)f.uw,t w0
:n3G/Xm1OQu;iF07).将sum变量变成只读变量
7\D%kW6q7J:d0
T5UB \ le0参考答案:
5b7T3sw HjI3d+t0declare -r sum
do#N)E$A{BAY0sum=love
\#GP3aY3cr0 LUPA开源社区 hSQ4c4C
LUPA开源社区"D*aG5xYz|6`vT
8).立即将当前的历史命令写到history档案中LUPA开源社区 L7y.v#p+v
*v \,lM };Y0参考答案:LUPA开源社区qaV#IQ
history -wLUPA开源社区n!w#[\BM
LUPA开源社区FdL KsIl y`
LUPA开源社区5~$}['F/D)B"m\ z
9).显示所有stty的参数,将erase更改为ctrl+h
xK$s E`\0
y/v:K-h$Ts%w+p0参考答案:
w:Y#SfN5RQ0stty -aLUPA开源社区#]hE&Q.Hu%I8I
stty erase ^hLUPA开源社区UH9j^[
LUPA开源社区] sG1V D3T$O Z4q
w%Sw-U%[010).将erase更改为默认的后退键(backspace)
,s)^h+U_gQ,y0 LUPA开源社区m&zrv:C9F)yO
参考答案:
hl!h[*]0stty erase ^?LUPA开源社区Q\w2H0DAU
LUPA开源社区e3v \3Vs!ZV?
LUPA开源社区-T [p}*i:_-jT
11).打印PATH 变量的第五个路径LUPA开源社区*d'boK)aH[nQ]
|C7_Qu7ye:}TR)K0参考答案:LUPA开源社区s7r G:J~L
echo $PATH|cut -d ':' -f 5LUPA开源社区u Zi(^!^)V&LbDM}W
LUPA开源社区t B m8]4q'Q
LUPA开源社区-I/j!A9B].Wwk
12).打印PATH变量的第3列与第5列
$ly-n ^)W+Xf0 LUPA开源社区fU+S8n \'[3y9K}0U
参考答案:
?8ps6Uv^ X0echo $PATH | cut -d ':' -f 3,5
$A1@9Fpi.i0
Ba1B:GC;l S0
X[%@3J6u{:^[:Q013).输出export命令的信息,但要求是每行第12字符以后的字串LUPA开源社区c E)OEW+@2b*[g
uh'J%Lo1Jw\w0参考答案:LUPA开源社区DCjnHp7r-C
export | cut -c 12-
rv$A[r(G0