如何强制"echo*"在Unix中的单独行上打印项目?

lll*_*ook 5 unix shell echo

*一些变量?当我这样做时,echo *它在一行上列出我的工作目录.如何强制此命令在单独的行上打印每个项目?

Jen*_*ens 11

这样做的正确方法是完全放弃非便携式设备,echo以支持printf:

 printf '%s\n' *
Run Code Online (Sandbox Code Playgroud)

但是,printf(和echo)方式有一个缺点:如果命令不是内置的并且有很多文件,扩展*可能会溢出命令行的最大长度(您可以查询getconf ARG_MAX).因此,要列出文件,请使用为作业设计的命令:

ls -1
Run Code Online (Sandbox Code Playgroud)

哪个没有这个问题; 甚至

find .
Run Code Online (Sandbox Code Playgroud)

如果你需要递归列表.