#!/bin/bash
cat /usr/local/nagios/libexec/std_filesystem.txt | while read line
do
if [ -d $line ]; then
file_system_name="-p $line"
new_file+=" $file_system_name"
check_filesystem="$new_file"
fi
done
echo $new_file
std_filesystem.txt has the following content
/usr/jboss
/www
/www/archive
/www/logs/jboss
/www/logs/heapdump
/opt
/opt/splunk
/opt/splunk/logs
/opt/udeploy
/www-pri1
/tmp
我希望能够打印出该循环的最后一次迭代。假设只有 /www /tmp /opt 存在,我希望回显为“-p /www -p /tmp -p /op”。谢谢你们的帮助
答案1
要按照要求进行操作,您只需更改+=
为=
.
如果您不为找到的每个真实案例附加现有值,覆盖每次都有一个新的最后一个真实情况,然后当循环结束时,最后一个真实值将是 中唯一的一个$new_file
。