Bash脚本 - 文件大小

时间:2014-05-11 11:21:41

标签: linux bash

我有一个bash脚本。我需要修改安全性。

我原来的bash脚本:

mv /home/script/backup /home/script/backup2
mysql -u user -ppassword -Ddatabase --batch --skip-column-names -e 'select id, url from videos where url like "%http%" limit 1' | 
while read id url

do youtube-dl -o "/home/script/uploads/$id.mp4" -f 18/17/22/mp4 "$url"
done

mysql -u user -ppassword -Ddatabase -e "UPDATE videos SET url=CONCAT(id,'.mp4') WHERE url LIKE '%http%' limit 1" ;

mysql -u user -ppassword -Ddatabase -e "UPDATE videos SET source_id='1' WHERE source_id in (3) limit 1";

mv /home/script/backup2 /home/script/backup

exit

我需要这个bash脚本:

mv /home/script/backup /home/script/backup2
mysql -u user -ppassword -Ddatabase --batch --skip-column-names -e 'select id, url from videos where url like "%http%" limit 1' | 
while read id url

do youtube-dl -o "/home/script/uploads/$id.mp4" -f 18/17/22/mp4 "$url"
done

这里:我想查看文件大小。如果它大于10 KB我想运行以下所有命令。

mysql -u user -ppassword -Ddatabase -e "UPDATE videos SET url=CONCAT(id,'.mp4') WHERE url LIKE '%http%' limit 1" ;

mysql -u user -ppassword -Ddatabase -e "UPDATE videos SET source_id='1' WHERE source_id in (3) limit 1";

mv /home/script/backup2 /home/script/backup

exit

如果小于10 KB或找不到文件,我只想运行此命令。

mv /home/script/backup2 /home/script/backup

exit

2 个答案:

答案 0 :(得分:1)

要获取以字节为单位的文件大小,您可以使用stat程序。有关此类型man stat的更多信息,请参阅命令行。 stat -c %s <file path>将以字节为单位输出文件大小,然后您应该检查它。

答案 1 :(得分:1)

除了詹姆斯所说的,另一种检查文件大小的方法是使用du命令。

du -h somefile.txt

结果:

4,0K somefile.txt

要省略文件名,您可以发出

du -h somefile.txt | cut -f 1

结果:

4,0K