我有一个shell脚本,它从文本文件中获取位置输入。我在脚本中循环读取行(位置)并将目录更改为位置并列出文件。
在下面的位置目录"开关"更改,因为此位置可能不存在于所有服务器上。我必须将此目录作为参数传递给文件,并将此位置传递给脚本。
locations.txt包含以下内容。/usr/test/home/process_file/开关/process.txt
shell脚本:
for i in `cat locations`;
do
echo $line
cd $i
if [ -d "$i" ]
then
cd $i
pwd
ls -ltr
else
exit
fi
done
在文件中存储文件名似乎有点低效。
不要读带有for
的行如果目录不存在,cd
将返回非零。
while IFS= read -r dir; do
if cd "$dir" 2>/dev/null; then
pwd
ls -ltr
else
echo "no such directory: $dir"
fi
done < /usr/test/home/process_file/switch/process.txt