在尝试执行这个bash脚本时,我在第16行得到错误。错误是这样的:第16行:语法错误靠近意外的标记then' line 16:
然后muj=ls -l $fajlli | awk '{print $7}'
'
#!/bin/bash
if [ -f modified ]
then rm modified
fi
touch modified
muajt=`date | awk '{print $2}'`
ditet=`date | awk '{print $3}'`
tegjithafajllet=`ls`
for fajlli in $tegjithafajllet
do
if[ -f $fajlli ]
16. then muj=`ls -l $fajlli | awk '{print $7}'`
dit=`ls -l $fajlli | awk '{print $8}'`
if[ $muajt = $muj -a $ditet = $dit ]
then echo $fajlli >> modified
fi
fi
done
Bash对空白空间有非常严格的规则。你需要像if [ -f $fajlli ]
你没有关闭if语句
#!/bin/bash
if [ -f modified ]
then rm modified
fi
touch modified
muajt=$(date | awk '{print $2}')
ditet=$(date | awk '{print $3}')
tegjithafajllet=$(ls)
for fajlli in $tegjithafajllet
do
if [ -f "$fajlli" ]; then
muj=$(ls -l "$fajlli" | awk '{print $7}')
dit=$(ls -l "$fajlli" | awk '{print $8}')
fi
if [ "$muajt" = "$muj" ] && [ "$ditet" = "$dit" ]; then
echo "$fajlli" >> modified
fi
done