Shell을 이용해서,,directory내에 file이 존재하는 지 확인하려면 어떻게 해야 할까요?
지금 제가 하려고 생각했던 것은요.
특정 directory에 가서 *.gz file이 몇개나 있는지 확인을
하고.
없으면 없다,,있으면,,모든 gz file을 list 하려고 하거든요..
남이 해놓은 걸 보고 이리저리 컨닝 중인데요..
잘 이해도 안되고 해서,,여기 글을 올려봅니다.
현재 만들어 놓은건요..
gz_file_list=`ls *.gz 2> /dev/null`
(이렇게 해서 gz_file_list에 모든 gzip file을 저장(?)해 놓으려고 합니다.)
number=$?
if [ $number -gt 0 ] (값을 찍어보니까요, gz file이 없으면 2가 찍히고, 있으면 0이 찍히네요.)
(즉 0보다 크다면,,,gz file이 없는 경우겠죠..이게 맞게 이해하는 건지요?)
then
echo "NO FILES"
else
echo "$gz_file_list"
fi
위와 같이 하면 맞는 걸까요?
또 인터넷을 뒤져보다 보니까요.. 아래와 같은 방법을 쓰는 경우도 있던데요 ..
if [ -z "gz_file_list" ]
이건 "gz_file_list"가 비어 있는가 비어있지 않는가를 확인하는 건가요?
좀더 찾아보고는 있는데, 아직 뜻이 명확히 와 닿지를 않아서요..
만일 이게 제대로 이해한 것이라면,,
혹시 아래와 같이 할 수도 있는 것인지 해서요 ..
gz_file_list=`ls *.gz 2> /dev/null`
if [ -z "gz_file_list" ]
then
echo "NO FILES"
else
echo "$gz_file_list"
fi
조언을 좀 부탁드려도 될까요 ~
미리 감사드립니다...
댓글 달기