作者gogostay (Go)
看板Grad-ProbAsk
标题[问题] bash shell
时间Wed May 6 21:35:47 2009
请问怎麽用bash写99乘法表呢?
1.
要印出
2x1=2 3x1=3 4x1=4 5x1=5
2x2=4 . . .
2x3=6 . . .
2x4=8 .
2x5=10
2x6=12
2x7=14
2x8=16
2x9=18 3x9=27 4x9=36 5x9=45
6x1=6 7x1=7 8x1=8 9x1=9
. . . .
. . . .
6x9=54 7x9=63 8x9=72 9x9=81
我的写法:
#!/bin/bash
for((i=1;i<=9;i++));do
for((j=1;j<=9;j++));do
printf "%d x %d = %d\n" $i $j $(($i*$j))
done
done
结果...99乘法有跑出来,但是不是老师"指定的格式",请问该怎麽处理呢?
2.
用read读入长度不定(可限制在4个)数字的字串(可用${#变数名称}来计算长度),
例如:3745,存入变数後,对其逐字判断(利用cut指令及其-c);若该数字小於等於4
则用printf指令显示A,反之则显示B。同理再针对第2个字,依此类推。例如:3745
经过运算後,会回应ABAB。
这题完全没头绪 > <
3.
写一个script名为u1.sh
并使用while、read、cut指令,抓出每一行以冒号: 分隔且第3个栏位的数值是
大於100小於110的资料行。
再写一个名为u2.sh的script,将读入的每行资料,利用以:号分隔的第1及第6栏资料
,每1行输出1次"useradd -m -d 第6栏资料 第1栏资料"。
最後执行"cat/etc/passwd | ./u1.sh | ./u2.sh > output.sh
也是毫无头绪
请指教,谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.39.201.30