感谢您考虑提供帮助。
我正在尝试创建一个简单的 shell 脚本,该脚本运行后将查看文件夹的所有目录,这些目录通常为大写形式,并会以小写形式创建指向该目录的符号链接。然后我将定期执行此脚本,因为新文件夹被添加到目录中以创建指向新文件夹的附加符号链接。该脚本必须知道已经为其创建了符号链接的其他文件夹,以免产生任何停止问题或错误。下面是我试图实现的可视化。
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Holmes
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Kingship
-rwxrwxrwx 1 root root 85 Jun 18 04:39 link.sh
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Lost
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Monkey
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Space Ship
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Test
至
lrwxrwxrwx 1 root root 6 Jun 18 04:49 holmes -> Holmes
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Holmes
lrwxrwxrwx 1 root root 8 Jun 18 04:49 kingship -> Kingship
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Kingship
-rwxrwxrwx 1 root root 85 Jun 18 04:39 link.sh
lrwxrwxrwx 1 root root 4 Jun 18 04:49 lost -> Lost
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Lost
lrwxrwxrwx 1 root root 6 Jun 18 04:49 monkey -> Monkey
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Monkey
lrwxrwxrwx 1 root root 10 Jun 18 04:49 space ship -> Space Ship
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Space Ship
lrwxrwxrwx 1 root root 4 Jun 18 04:49 test -> Test
drwxr-xr-x 2 root root 4096 Jun 18 03:52 Test
显然,脚本必须能够为稍后创建但还没有符号链接的文件夹创建新的符号链接。
我一直在修改其他两个帖子/答案的语法,除了重新创建单个答案的结果之外,我并没有真正得到任何地方。帖子在这里使用子目录上的查找并创建指向所有文件的符号链接和Bash 脚本以自动创建指向树中子目录的符号链接
也许我正在用错误的方法解决我的解决方案。我实际上想要实现的是,这是一个 NAS 系统,它具有根据用户名自动创建的文件夹。然后这些文件夹会通过 samba home 共享自动共享。但是,除非创建小写文件夹,否则无法访问共享,因为文件夹最初是使用空格以及使用用户名的大小写结构创建的。用户名的结构与 unix 系统并不完全兼容,因为在 unix 系统上测试和测试是两个不同的东西。我研究了如何允许使用大写创建用户名,但是进行这些更改不会影响 samba 共享如何识别文件夹。