孟村县网站建设公司,房屋平面设计图制作软件,网站推广seo软件,可以做免费广告的网站有哪些一、练习#xff1a;脚本#xff1a;判定192.168.0.200-192.168.0.254之间哪些主机在线#xff0c;要求#xff1a;1、使用函数来实现一台主机的判定过程#xff1a;2、在主程序中调用此函数判定指定范围内的所有主机的在线情况#xff0c;vim ping.sh#!/bin/bash#PING()… 一、练习脚本判定192.168.0.200-192.168.0.254之间哪些主机在线要求1、使用函数来实现一台主机的判定过程2、在主程序中调用此函数判定指定范围内的所有主机的在线情况vim ping.sh#!/bin/bash#PING() {for i in {200..254};do if ping -c 1 -w 1 192.168.0.$i /dev/null; then echo 192.168.0.$i is up else echo 192.168.0.$i is down fi done}PINGchmod x ping.sh把所有功能写入函数体中无法适用更广泛的环境上面脚本就是这样下面实例在函数中使用位置变量在主程序中调用函数体使脚本使用环境更宽泛vim ping.sh#!/bin/bash#PING() { if ping -c 1 -w 1 $1 /dev/null; then echo 192.168.0.$i is up else echo 192.168.0.$i is down fi done}for i in {200..254};dp PING 192.168.0.$idonefor i in {200..254}; do PING 172.16.100.$idone下面实例函数体使用return参数在主程序中判定IP地址up和downvim ping.sh#!/bin/bash#PING() { if ping -c 1 -w 1 $1 /dev/null; then return 0 else return 1 fi done}for i in {200..254};dp PING 192.168.0.$i if [ $? -eq 0 ]; then echo 192.168.0.$1 is up else echo 192.168.0.S1 is downdonefor i in {200..254}; do PING 172.16.100.$idone 练习二、 编写脚本/root/bin/copycmd.sh(1) 提示用户输入一个可执行命令名称(2) 获取此命令所依赖到的所有库文件列表(3) 复制命令至某目标目录(例如/mnt/sysroot)下的对应路径下 如/bin/bash /mnt/sysroot/bin/bash/usr/bin/passwd /mnt/sysroot/usr/bin/passwd(4) 复制此命令依赖到的所有库文件至目标目录下的对应路径下 如/lib64/ld-linux-x86-64.so.2 /mnt/sysroot/lib64/ld-linux-x86-64.so.2(5)每次复制完成一个命令后不要退出而是提示用户键入新的要复制的命令并重复完成上述功能直到用户输入quit退出#1/bin/bashdst/mnt/sysimageif [ ! -e $dst ];then mkdir -pv $dstfimy_cp() { local src$1 local dst$2 local dirdirname $dst if [ ! -e $dir ];then mkdir -pv $dir fi \cp -a $src $dst}while true;do read -p enter you cmd; short_cmd if [ $short_cmd quit -o $short_cmd q ];then exit 0 fi short_cmdbasename $short_cmd long_cmdwhich --skip-alias --skip-functions --skip-dot --skip-tilde $short_cmd /dev/null #cp bin my_cp $long_cmd $dst$long_cmd # cp lib for lib in ldd $long_cmd |egrep -o /[^[:space:]];do echo -e \n$lib\n my_cp $lib $dst$lib donedone 转载于:https://blog.51cto.com/12601987/2058439