2013-02-19 92 views
0

我制作了这个脚本,它应该接收一个或多个参数,而这些参数都是目录,并且必须浏览这些目录(一个接一个)并执行一些操作。 的操作正常工作,如果该参数是1(只有一个目录), 我应该如何修改我的脚本,使其工作,如果超过1参数传递 例如,如果我想要它做相似的操作23目录与此同时? 感谢Shell脚本浏览作为参数传递的一个或多个目录

#!/bin/sh 
cd $1 
for file in ./* # */ 
do  
    if [[ -d $file ]] 
    then 
    ext=dir 
    else 
    ext="${file##*.}" 
    fi 
    mv "${file}" "${file}.$ext" 
done 

回答

0

首先,如果你使用bash使用bash的井号(#!/斌/庆典)。 然后使用

#! /bin/bash 

for d in "[email protected]" 
do 
    echo "Do something with $d" 
done 

遍历命令行参数(在你的情况迪尔斯)

0
#!/bin/sh 

for dir in "[email protected]"; do      
    for file in "$dir"/*; do 
    echo "Doing something with '$file'" 
    done 
done 
相关问题