질문:
저는 bash
책(Linux Shell Scripting with Bash, Ken O. Burch)에서 배우고 있는데 지금 팔로우하고 있는 책에서는 다음 명령을 사용하고 있습니다.
/usr/bin/statftime
하지만 Linux에서는 이 명령을 찾을 수 없습니다.
나는 데비안 9.0 확장판을 사용하고 있습니다.
질문:
이 명령에 대해 알려주실 수 있나요? 데비안에 설치할 수 있나요? 데비안에 어떻게 설치하나요?
편집하다:
이 책은 내가 읽은 책 중 최고 중 하나입니다 bash
. (Bash를 사용한 Linux Shell Scripting, Ken O. Burch) (@Gilles) 따라서 이것은 속임수가 아닐 수도 있습니다. 아래 코드를 게시하겠습니다.
코드는 다음과 같습니다.
#!/bin/bash -x
#
# polling.sh: a daemon using polling to check for new files
shopt -s -o nounset
declare -rx SCRIPT=${0##*/}
declare -rx INCOMING_FTP_DIR="/home/ftp/ftp_incoming"
declare -rx PROCESSING_DIR="/home/ftp/processing"
declare -rx statftime="/usr/local/bin/statftime"
declare FILE=""
declare FILES=""
declare NEW_FILE=""
printf "$SCRIPT started at %s\n" "`date`"
# Sanity checks
if [[ ! -d /home/ftp/ftp_incoming ]] || [[ ! -d /home/ftp/processing ]]
then
mkdir -p /home/ftp/ftp_incoming
mkdir -p /home/ftp/processing
if [ "$?" -ne 0 ]
then
echo "You are a idiot"
else
echo "You succeded!"
fi
fi
if test ! -r "$INCOMING_FTP_DIR"
then
printf "%s\n" "$SCRIPT:$LINENO: unable to read the incoming directory --aborted" >&1
exit 1
fi
if test ! -r "$PROCESSING_DIR"
then
printf "%s\n" "$SCRIPT:$LINENO: unable to read the incoming directory --aborted" >&1
exit 1
fi
if test ! -r "$statftime"
then
printf "%s\n" "$SCRIPT:$LINENO: unable to find or execute $statftime --aborted" >&1
exit 1
fi
# Poll for new FTP files
cd $INCOMING_FTP_DIR
while true
do
#check for new files more than 30 minutes unchanged
FILES=`find . -type f -mmin +30 -print`
# If new files exist, move them to the processing directory
if [ ! -z "$FILES" ]
then
printf "$SCRIPT: new files have arrived at %s\n" "`date`"
printf "%s\n" "$FILES" |
{
while read FILE
do
# Remove leading "./"
FILE=${FILE##*/}
# Rename the file with the current time
NEW_FILE=`$statftime -f "%_L%_a_%T.dat" "$FILE"`
if [ -z "$NEW_FILE" ]
then
printf "%s\n" "$SCRIPT:$LINENO: statftime failed to create a new filename--skipping"
else
# Move the file to the processing directory
printf "%s\n" "$SCRIPT: moved $FILE to $PROCESSING_DIR/$NEW_FILE"
mv "$FILE" "$PROCESSING_DIR/$NEW_FILE"
fi
done
}
fi
sleep 30
done
printf "$SCRIPT finished unexpectedly at %s\n" "`date`"
exit 1
다음은 명령에 대한 몇 가지 정보입니다.
답변1
해결책
간단한 검색은 통과구글 통계 시간찾고 있는 프로그램의 소프트웨어 공급업체를 첫 번째 결과로 반환합니다. 페가소프트Linux에 초점을 맞춘 블로그처럼 보입니다.Ada 프로그래밍 언어.
검색은 statftime debian
데비안 저장소와 관련된 어떤 것도 반환하지 않는다는 점에 유의하세요. 이것설치 참고 사항필요할 것이다구축을 위한 필수 패키지, 설치 지침은 다음 위치에 있습니다.Debian Linux는 GNU GCC 컴파일러와 개발 환경을 설치합니다.. 당신의 책 어딘가에 링크가 각주 같은 형태로 존재한다고 확신합니다.