如何仅使用特殊字符在Linux中遍历目录

时间:2019-01-22 16:06:37

标签: linux bash

我正在玩一个在线游戏,其中给了我一台远程Linux机器。限制是我不能使用任何数字/字母/命令。我确定的一件事是,不限制使用特殊字符(给出提示)。

有什么方法可以仅使用特殊字符来遍历linux系统/文件/目录吗?

1 个答案:

答案 0 :(得分:0)

site开始,我知道bash shell中每个通配符都有特殊的含义。此外,使用通配符:

root@kali:/# /
bash: /: Is a directory
root@kali:/#

*-可以用于文件名的自动完成

因此,cat down*打印出download1.txt的内容。

使用?,可提供父目录的更多详细信息,但按字母顺序,一次只能显示一个。

root@kali:/# /???
bash: /bin: Is a directory
root@kali:/#

结合使用这些通配符, 如果目录的路径为 / root / Downloads / public ,则可以通过以下方式访问:

root@kali:/# /????/?????????/??????
bash: /root/Downloads/public: Is a directory

[注意:更具体地说,一个人也可以使用root@kali:/# /r???/D????????/p?????,但是在我的情况下不允许使用字符,并且没有其他目录与这组组合冲突。]

替代: 如我们所见*的自动完成功能,

root@kali:/# /r*/*/p?????

给出相同的输出。

*?之间的目录遍历差异:

?-用于按字符访问目录名。

*-用于自动完成,与目录名称的长度无关。