基本的に (できれば) ウェブカメラからビデオ ストリームを記録し、それを特定のディレクトリに保存してから、ユーザーが数字を入力するとそれを強制終了したいと考えています。私はこれをうまく説明していないので、現在私がしていることは次のとおりです。
#!/bin/bash
while true
do
TIMESTAMP=$(date +"%Y.%m.%d_%H.%M")
read -p "Enter your number here: " YOURNUMBER
echo -e "Saving video stream:"
mkdir /home/$USER/orders/$YOURNUMBER
avconv -f video4linux2 -r 3 -fs 52428800 -i /dev/video0 /home/$USER/orders/$YOURNUMBER/$TIMESTAMP-$YOURNUMBER.avi
echo -e "Video complete!"
done
そのため、記録を停止し、新しい $YOURNUMBER フォルダーで新しい記録を開始したいと考えています。何か案は?(これはかなり新しい..我慢してください!)
アップデート:
@TrueYに感謝
更新されたスクリプト (実際には mkdir を実行する必要はないので削除):
CPID=0
while :; do
read -p "Enter your number here: " YOURNUMBER
[ $CPID -ne 0 ] && kill -INT $CPID
TIMESTAMP=$(date +"%Y.%m.%d_%H.%M")
avconv -f video4linux2 -r 3 -fs 52428800 -i /dev/video0 /home/$USER/orders/$YOURNUMBER[packed-$TIMESTAMP].avi > /dev/null 2>&1 &
CPID=$!
done
唯一の問題は、私 (またはエンド ユーザー) が再度記録を開始する前に、番号を 2 回入力する必要があることです。