实验三 Linux Shell程序设计实验

实验三 Linux Shell程序设计实验

1.读下面shell程序,说明其功能,对比分析测试结果
#! /bin/sh
for lib in lib{gmp,mpfr,mpc}.la; do  
echo  $lib: $(
if find /usr/lib* -name $lib | grep -q $lib; then
                       : ;
else
echo not; 
fi
                  ) found;
done;
unset lib

在这里插入图片描述
在这里插入图片描述

2.读下面shell程序,说明其功能,对比分析测试结果
#! /bin/sh
export LC_ALL=C
bash --version | head -n1 | cut -d" " -f2-4
echo "/bin/sh -> `readlink -f /bin/sh`"
echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-
bison --version | head -n1
if [ -h /usr/bin/yacc ]
then
echo "/usr/bin/yacc -> `readlink -f /usr/bin/yacc`"
elif [ -x /usr/bin/yacc ]
then
echo yacc is `/usr/bin/yacc -V | head -n1`
else
echo "yacc not found"
fi
bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f1,6-
echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
diff --version | head -n1
find --version | head -n1
gawk --version | head -n1
if [ -h /usr/bin/awk ]; then
echo "/usr/bin/awk -> `readlink -f /usr/bin/awk`";
elif [ -x /usr/bin/awk ]; then
echo yacc is `/usr/bin/awk --version | head -n1`
else
echo "awk not found"
fi
gcc --version | head -n1
g++ --version | head -n1
ldd --version | head -n1 | cut -d" " -f2- # glibc version
grep --version | head -n1
gzip --version | head -n1
cat /proc/version
m4 --version | head -n1
make --version | head -n1
patch --version | head -n1
echo Perl `perl -V:version`
sed --version | head -n1
tar --version | head -n1
makeinfo --version | head -n1
xz --version | head -n1
echo 'main(){}' > dummy.c && g++ -o dummy dummy.c
if [ -x dummy ]; then
echo "g++ compilation OK";
else
echo "g++ compilation failed";
fi
rm -f dummy.c dummy 

在这里插入图片描述

七、思考讨论题

比较C语言中的循环与shell程序的循环。
答:shell中的for循环与在c中不同,它包含三种形式:第一种结构是列表for循环;第二种结构就是不带列表的for循环;第三种就类似于C语言。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值