Linux操作使用

Linux命令使用备忘录

linux列出同名文件:

find /tmp -type f | perl -nle 's/(.*\/)/\1 /;print' | sort -k2 | uniq -f 1 -D | sed -e 's/ //' >find_diff.txt

Linux cp 不覆盖:

awk 'BEGIN { cmd="cp -ai /source/* /dest/"; print "n" |cmd; }'

Linux mount NTFS:

sudo mount -o rw,relatime,uid=1000,gid=1000,fmask=0122,dmask=022 /dev/sdb3 /opt/Media/

挂在virtualbox共享文件夹

mount -t vboxsf -o rw,nodev,nosuid,uid=1000,gid=1000 <share_name> ~/share_folder

命令行获取公网ip:

curl -s ifconfig.me

unzip解压乱码:

unzip -O cp936 filename.zip

查看视频分辨率:

ffprobe -v error -select_streams v:0 -show_entries stream=width,height -of csv=s=x:p=0 input.mp4 ffprobe video_720p.mp4 2>&1 | grep "Stream #0" ffmpeg -i video_720p.mp4 2>&1 | grep "Stream #0"

格式化查看信息:

ffprobe -v quiet -print_format json -show_format -show_streams input.mp4 //ffprobe -v error -print_format json -show_format -show_streams input.mp4

无损音频flac转mp3:
for i in *.flac ; do 
    ffmpeg -i "i" -acodec libmp3lame "(basename "${i/.flac}")".mp3
    #sleep 60
done
VOB文件转MP4:

ffmpeg -i input.vob output.mp4

ts文件转MP4:

ffmpeg -y -i test.ts -c:v libx264 -c:a copy -bsf:a aac_adtstoasc output.mp4

ffmpeg下载m3u8视频:

ffmpeg -i https://vod.hjbfq.com/20210322/9dLHGMH8/1000kb/hls/index.m3u8 -c copy output.ts

ffmpeg 下载带key文件的ts视频流

ffmpeg -allowed_extensions ALL -i "https://vod1.bdzybf1.com/20200911/XjxjlnbR/1000kb/hls/index.m3u8" -c copy -bsf:a aac_adtstoasc filename.mp4
ffmpeg -allowed_extensions ALL -i "https://vod1.bdzybf1.com/20200911/XjxjlnbR/1000kb/hls/index.m3u8" -c copy filename.ts #这个下载, 再转mp4比较好,不然下载太慢了

文件权限全是问号解决:

原因:文件夹没有执行权限了,例如执行了chmod 644 -R .
修复:find . -type d -exec chmod a+x {}\;