第一范文网 - 专业文章范例文档资料分享平台

linux复习题

来源:用户分享 时间:2025/6/16 18:45:44 本文由閻庢稏鍊曠缓楣冨籍閻樺啿澹� 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

while [ $tmp -le $1 ] do

fact=$((fact*tmp));tmp=$((++tmp)); done

echo \2. 阅读Makefile文件:

all : libmys.so

SRC = f1.c f2.c f3.c TGT = $(SRC:.c=.o) %.o : %.c cc -c $?

libmys.so : $(TGT) cc -shared -o $@ $(TGT) clean: rm -f $(TGT)

回答以下问题:

(1) 此Makefile文件的主要功能是什么?

(2) 此Makefile文件包含多少个规则?它们分别是什么?

(3) 使用此Makefile文件可以生成目标文件f2.o吗?为什么? 参考答案:

(1)生成共享库文件libmys.so;

(2) 4个。分别是:all,%.o,libmys.so和clean。

(3) 可以。因为规则%.o : %.c已经定义了*.o与*.c的关系和生成方法。

最大公约数和最小公倍数 #!/bin/bash

read -p \

read -p \a=$c b=$d

while [ `expr $a % $b` -ne 0 ] do

r=`expr $a % $b` a=$b b=$r done

echo \sui=`expr $c / $b`

sui=`expr $sui \\* $d / $b` sui=`expr $sui \\* $b` echo \

(7)加减乘除运算,其中

l 两个操作数和一个运算符由位置参数给出 l 在屏幕上分别显示操作数、运算符和运算结果 #!/bin/bash #test 7

read -p \read -p \

read -p \

v=`echo \echo \

(10)冒泡法对10个数按升序排序 #!/bin/bash

#test 10 冒泡法输出 i=0

for m in \do

a[i]=$m let i=i+1 done

(12)求n的阶乘,n=100 方法1: #!/bin/bash a=1

for(( i=1; i <= 100; i++ )) do

a=$[ $i * $a ] done

echo \!=$a\方法2(递归)(可以求任意数的阶乘): function func {

if [ $1 -eq 1 ];then echo \ else

local i=$[ $1 - 1 ] local j=`func $i`

a=`echo \ echo $a fi }

read -p \n=`func $m` echo \

1、编写一个shell脚本,完成功能: ? 1)显示文字“Waiting for a while….‖

? 2)长格式显示当前目录下面的文件和目录,并输出重定向到/home/file.txt文件

? 3)定义一个变量,名为s,初始值“Hello‖ ? 4)使该变量输出重定向到/home/string.txt文件

2、编写一个shell脚本,它把第二个位置参数及其以后的各个参数指定的文件复制到第一个位置参数指定的目录中。

3、编写一个shell脚本,利用for循环将当前目录下的.c文件移动到指定的目录,并按文件大小显示出移动后指定的目录的内容。

4、利用数组形式存放10个城市的名字,然后利用for循环把它们打印出来。

1、 #!/bin/bash

echo ―Please wating….‖ ls –l > home/tem1 a=―Hello‖

echo $a > /home/tem2 2、 #!/bin/bash dir=$1 shift

while [ $1 ] do file=$1 cp $1 $dir shift done ls $dir

3、 #!/bin/bash

for file in *.c do cp ${file} ${1} done ls ${1} –lS 4、 #!/bin/bash

name=(唐山 北京 天津 保定 秦皇岛 廊坊 石家庄 邯郸 承德 邢台) for i in ${name[*]} do echo $i done

(基训十一) 在根目录下有四个文件m1.txt,m2.txt,m3.txt,m4.txt,用Shell编程,实现自动创建m1,m2,m3,m4四个目录,并将m1.txt,m2.txt,m3.txt,m4.txt四个文件分别拷贝到各自相应的目录下。 #!/bin/bash cd /

touch m1.txt m2.txt m3.txt m4.txt I=1 while [ $I -le 4 ] do

mkdir m$I cp m$I.txt m$I I=$((I+1)) done

3、(基训十二) 编写一个名为myfirstshell.sh的脚本,它包括以下内容。a) 包含一段注释,列出您的姓名、脚本的名称和编写这个脚本的目的。

b) 问候用户。 c) 显示日期和时间。 d) 显示这个月的日历。 e) 显示您的机器名。

f) 显示当前这个操作系统的名称和版本。 g) 显示父目录中的所有文件的列表。 h) 显示root正在运行的所有进程。 i) 显示变量TERM、PATH和HOME的值。 j) 显示磁盘使用情况。 k) 用id命令打印出您的组ID。 m) 跟用户说“Good bye” #!/bin/bash

# 09嵌入 5号 贾德进 myfirstshell.sh shell的简单编程 user=`whoami` case $user in root) echo \echo \

echo \

echo \日期和时间: `date`\本月的日历: `cal`\echo \本机的机器名:`uname -n`\

echo \当前这个操作系统的名称和版本:`uname -s;uname -r`\父目录中的所有文件的列表:`ls ../`\正在运行的所有进程:` ps -u root`\变数TERM的值:$TERM\变数PATH的值:$PATH\变数HOME的值:$HOME\echo \磁盘的使用情况:`df`\

echo \用id命令打印出你的组ID:`id -g`\

4、(基训十三) 设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限为 rwxr-xr— #!/bin/bash cd /userdata I=1 while [ $I -le 50 ] do

mkdir -p userdata/user$I chmod o-x user$I I=$((I+1)) done

5、(基训十四) 编写shell程序,实现自动删除50个用户账号的功能。账号名为stud1至stud50。

#!/bin/bash cd /userdata I=1 while [ $I -le 50 ] do

mkdir -p userdata/user$I chmod o-x user$I I=$((I+1)) done

6、(基训十四) 设计一个shell程序,备份并压缩/etc目录的所有内容,存放在/root/bak目录里,且文件名为如下形式yymmdd_etc,yy为年,mm为月,dd为日。 #!/bin/bash

DIRNAME=`ls |root|grep bak ` if [-z $DIRNAME ]; then mkdir /root/bak cd /root/bak fi

YY=`date + %y` MM=`date + %m`

DD=`date + %d`tar czvf ${YY}${MM}${DD}_etc.gz /etc echo \

搜索更多关于: linux复习题 的文档
linux复习题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c2859d0jr6u17c193742k_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top