zsh 的 file 工具和 Linux 自带 file 相比,还比较含蓄了

3 天前
 hwdq0012
rn/minesweeper/libs
✦ ❯ touch a

rn/minesweeper/libs
✦ ❯ ln -s a b

rn/minesweeper/libs
✦ ❯ ll
total 0
-rw-r--r--  1 hbb  staff     0B  8 24 16:29 a
lrwxr-xr-x  1 hbb  staff     1B  8 24 16:29 b -> a

rn/minesweeper/libs
✦ ❯ file b
b: empty

不会提示是一个链接符号

刚才 file 看了输出正常就 rm -rf 了

在 linux 下 file 如果是链接符号 会提示一下

$ mkdir test
$ touch a 
$ ln -s a b
$ file b
b: symbolic link to a

.git 都干没了

2306 次点击
所在节点    程序员
10 条回复
aloxaf
3 天前
zsh 没有内置的 file 命令吧?
hwdq0012
3 天前
@aloxaf #1 应该是 mac 的, 还有 du 都和 Linux 不一样
chingyat
3 天前
GNU 的命令行工具大多比 BSD 的好用
w568w
3 天前
macOS 的实现: https://github.com/apple-oss-distributions/file/blob/03da74dd39d8209bfe953306347a8c514e688025/file/src/fsmagic.c#L383

Linux 的(上游的)实现: https://github.com/file/file/blob/74e451be9d9e86af5e06e9795403017f8c6833ba/src/fsmagic.c#L375

没看出太大区别。两边应该都会打印符号链接。是版本问题?

另外不该依赖这个看符号链接的。
cnbatch
3 天前
@chingyat 是 mac 的命令行工具版本太旧了
skiy
3 天前
zsh 没有内置 file 命令。
macos 中的很多命令跟 linux 的都有差别。比如 sed -i 就不一样。
cnbatch
3 天前
mac 的内置命令行工具应该很久都没更新过了,上游的工具都早已迭代了很多个版本

FreeBSD 的输出:
b: symbolic link to a

NetBSD 的输出:
b: symbolic link to a

OpenBSD 的输出:
b: symbolic link to 'a'
hwdq0012
3 天前
@w568w ls -l 准吗
hwdq0012
3 天前
@skiy ps 也不一样 mac 参数前不➕-
bao3
2 天前
@hwdq0012 其实 linux 的 ps 也不加 - 。还有 tar 等等。 这些都是古早的工具遗留下来的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1154573

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX