Mae*_*lPJ 37 linux ls wildcards
有一个线程谈论ls "*"不显示任何文件,但我实际上想知道为什么简单
ls *
Run Code Online (Sandbox Code Playgroud)
命令除了在我的终端中不输出任何内容
ls: invalid option -- '|'
Try 'ls --help' for more information.
Run Code Online (Sandbox Code Playgroud)
尽管
ls
Run Code Online (Sandbox Code Playgroud)
将列出当前目录中的所有文件为
1 ferol readme.txt
2 fichier sarku
2018 GameShell Templates
22223333 '-|h4k3r|-' test
3 hs_err_pid2301.log test2
CA.txt important.top.secret.txt toto.text
CA.zip JavaBlueJProject tp1_inf1070
countryInfo.txt liendur 'tp1_inf1070_A19(2) (1)'
currency liensymbolique tp1_inf1070_A19.tar
curreny LOL Videos
Desktop Longueuil 'VirtualBox VMs'
Documents Music words
douffos numbers Zip.zip
Downloads Pictures
examples.desktop Public
Run Code Online (Sandbox Code Playgroud)
关于为什么通配不在这里生效的任何想法?我在 Ubuntu 上,在终端上工作,我不知道它是否有所作为。
谢谢。
Jig*_*aga 103
当你跑
ls *
Run Code Online (Sandbox Code Playgroud)
globbing 像往常一样生效,并且*扩展到当前目录中的所有文件名——包括这个:
-|h4k3r|-
Run Code Online (Sandbox Code Playgroud)
以 a 开头-,因此ls尝试将其解析为选项(如-a或-l)。由于|实际上不是 识别的选项ls,它会抱怨错误消息invalid option,然后退出(不列出任何文件)。
如果要明确列出当前文件夹中的所有内容,请尝试
ls ./*
Run Code Online (Sandbox Code Playgroud)
...它将为所有文件名加上前缀./(这样条目不会被误解为一个选项),或者
ls -- *
Run Code Online (Sandbox Code Playgroud)
... --“指示选项结束的分隔符”在哪里,即。任何剩余的参数都是文件名。
| 归档时间: |
|
| 查看次数: |
6928 次 |
| 最近记录: |