내 루프가 있습니다
for i in 1.34*
do
if [ -f $i/rela/*log ] ; then
echo $i >> /tmp/allog
else
echo $i >> /tmp/alnolog
fi
done
잘 작동합니다. 오름차순으로 나열된 다양한 버전의 배포판이 있습니다. 일반적으로 디렉터리에 대한 로그 없이 모든 버전을 포함하는 다른 파일을 만들어야 합니다. 문제는 이 파일을 생성하고 여러 버전을 삽입해야 할 때입니다.
스크립트를 생성하고 실행해야 하는 첫 번째 버전과 마지막 버전을 요청하고 싶습니다(이 버전의 일반 형식은 1.34.0.04입니다).
답변1
간단한 쉘 모드에서 벗어날 수도 있습니다. 예를 들어
for i in 1.3[4-9]* 1.4[0-3]*
개정판1.34 to
1.43` 과 일치for i in 1.34.0.0[4-9]* 1.34.0.[1-9]* 1.34.[1-2].0[1-5]*
일치1.34.0.04
개정1.34.2.05
등
답변2
이 스크립트를 만들려고 합니다.
echo "Enter The Release Which You Have to start with : \c"
read START
echo "Enter The Release Which You Have to finish with : \c"
read END
cd ${RELDIR}
for i in $(eval echo "{$START..$END}")
do
if [ -f $i/rela/*log ] ; then
echo $i >> /tmp/allog
else
echo $i >> /tmp/alnolog
fi
done
하지만 내가 입력한 두 변수만 제거하기 때문에 작동하지 않습니다.