Linux Bash-需要使用exit,然后调用另一个函数吗?
我正在写一个小脚本来使用笔记本电脑上的摄像头,然后通过电子邮件把照片发给我。ffmpeg的使用必须有一个退出代码才能工作,因此,通过此退出,邮件功能将不会被调用。我做错了什么Linux Bash-需要使用exit,然后调用另一个函数吗?,linux,bash,Linux,Bash,我正在写一个小脚本来使用笔记本电脑上的摄像头,然后通过电子邮件把照片发给我。ffmpeg的使用必须有一个退出代码才能工作,因此,通过此退出,邮件功能将不会被调用。我做错了什么 #!/bin/bash MAIL_ADDR=user@example.com ts=`date +%s` list=$(ls | tail -n 1) function mcheese(){ mkdir /tmp/cheese cd /tmp/cheese echo -e "Cheese " | mutt -s "$T
#!/bin/bash
MAIL_ADDR=user@example.com
ts=`date +%s`
list=$(ls | tail -n 1)
function mcheese(){
mkdir /tmp/cheese
cd /tmp/cheese
echo -e "Cheese " | mutt -s "$TS Cheese" $MAIL_ADDR -a $list
}
function cheese(){
ffmpeg -f video4linux2 -s vga -i /dev/video0 -vframes 3 /tmp/cheese/vid-$ts.%01d.jpg
exit 0
}
cheese
mcheese
您可以在一个目录中设置
列表
,然后更改目录并使用它。
这不太可能奏效
使用
bash-x
找出脚本实际失败的地方。那么,当您删除退出0
时会发生什么?请注意,您可以从函数中返回0
,而无需退出整个脚本。如果需要退出,它可以在子shell中吗?例如,$(ffmpeg…;退出0)
.exit被删除时出错-无法统计yasm-1.1.0.tar.gz:没有这样的文件或目录yasm-1.1.0.tar.gz:无法附加文件。这个yasm-1.1.0.tar.gz
文件出现在哪里?在文件夹的根目录中-因此为此,它的/home/user/scripts/yasm-1.1.0Ahh愚蠢的我-我正在列出根文件夹-正在工作:-@Grimlockz你可以使用此小技巧可以避免更改目录时出现问题:list=$(ls-d“$PWD”/*| tail-n1)
。这样它将拥有完整的路径。