我正在使用以下bash脚本随机选择.mp4文件,并将其符号链接到应用程序(Plex)可以读取的另一个文件夹。问题在于,似乎(随机)在变量$ FILE中添加了“ ._”,然后将其用于符号链接。有什么想法吗?
#/bin/sh
rm -f /media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ/preroll.mp4
find /media/joshua/Media/PlexPrerolls/ -maxdepth 1 -not -type d | sort -R | tail -1 | while read FILE; do
ln -s "$FILE" /media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ/preroll.mp4 ;
done
只需查看每4行的结尾。
请参见._PlexStrangerThingsPreroll.mp4
,然后再次查看._PlexSnowPreroll.mp4
._Plex preroll 6F.mp4
._不应出现在这里。
lrwxrwxrwx 1 root root 64 Apr 10 13:19 preroll.mp4 -> /media/joshua/Media/PlexPrerolls/._PlexStrangerThingsPreroll.mp4
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 54 Apr 10 13:23 preroll.mp4 -> /media/joshua/Media/PlexPrerolls/._PlexSnowPreroll.mp4
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 52 Apr 10 13:24 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/Plex preroll 8F.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 66 Apr 10 13:24 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/Plex Preroll-Fallout4-1080-12.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 52 Apr 10 13:25 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/Plex preroll 6F.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 63 Apr 10 13:25 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/Plex Preroll energy reveal.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 62 Apr 10 13:26 preroll.mp4 -> /media/joshua/Media/PlexPrerolls/PlexStrangerThingsPreroll.mp4
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 54 Apr 10 13:27 preroll.mp4 -> /media/joshua/Media/PlexPrerolls/._PlexFirePreroll.mp4
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 54 Apr 10 13:27 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/._Plex preroll 6F.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 55 Apr 10 13:28 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/._Plex preroll 13E.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 63 Apr 10 13:28 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/Plex Preroll energy reveal.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 63 Apr 10 13:28 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/Plex Preroll energy reveal.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 68 Apr 10 13:46 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/._Plex Preroll-Fallout4-1080-12.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 54 Apr 10 13:50 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/._Plex preroll 6F.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 68 Apr 10 13:50 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/._Plex Preroll-Fallout4-1080-12.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 4.0K
lrwxrwxrwx 1 root root 68 Apr 10 13:50 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/._Plex Preroll-Fallout4-1080-12.mp4'
root@wyss-server:/media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ# ls -lh
total 0
lrwxrwxrwx 1 root root 52 Apr 10 13:50 preroll.mp4 -> '/media/joshua/Media/PlexPrerolls/Plex preroll 8E.mp4'
我正在使用ubuntu 18
答案 0 :(得分:0)
谢谢@JNevill,您是正确的。这些文件从MacOS到Ubuntu。我没有意识到MacOS会创建那些隐藏文件。每当我在目录中列出ls
个文件时,它们都不会显示。
当我在脚本中添加-not \( -iname "._*" \)
时,它将忽略那些文件。
下面是更新的脚本。
#/bin/sh
rm -f /media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ/preroll.mp4
find /media/joshua/Media/PlexPrerolls/ -maxdepth 1 -not -type d -not \( -iname "._*" \) | sort -R | tail -1 | while read FILE; $
ln -s "$FILE" /media/PATH_TO_PREROLL_THAT_PLEX_CAN_READ/preroll.mp4 ;
done
此外,我忘了在原始帖子中说我是从https://www.reddit.com/r/PleX/comments/arccd7/better_way_to_randomize_plexrolls/
获得此脚本的万一有人因搜索引擎等原因来到这里,我已经在此处创建了用于实现此脚本目的的说明:https://www.reddit.com/r/PleX/comments/fyoqh4/randomizing_prerolls_on_linux/