Linux:将目录内容显示为文件吗?

Linux:将目录内容显示为文件吗?

我有点搞不清楚目录到底是什么。我在很多地方都读到,在 Linux 中,目录只是保存嵌套文件名称的字符串。那么,有没有办法像我们使用 一样准确显示目录的内容cat file

我想要一种方法来做cat .然后我期望得到这样的结果:

\STARTfile1\0file2\0\END

答案1

在 Linux 文件系统中,基本上“一切都是‘inode’”。

“文件”是包含数据的一组命名的 inode。

“目录”包含文件列表。

相同的 inode 可能由不同的文件共享。换句话说,相同的文件(可能位于不同的目录中)可以有多个名称。

这些链接可能有助于澄清:

PS:也许您对“readdir()”API感兴趣:

http://linux.die.net/man/3/readdir

答案2

需要考虑的是,vi如果您执行以下操作,则会显示目录列表vi [DIR]

vi /home/jon/

给出:

" ============================================================================
" Netrw Directory Listing                                        (netrw v102)
"   /home/jon
"   Sorted by      name
"   Sort sequence: [\/]$,*,\.bak$,\.o$,\.h$,\.info$,\.swp$,\.obj$
"   Quick Help: <F1>:help  -:go up dir  D:delete  R:rename  s:sort-by  x:exec
" ============================================================================
../
./
.fontconfig/
.ipython/
.matplotlib/
.pip/
.pylint.d/
.python-eggs/
.ssh/
.subversion/
.vim/
Python-2.7.1/
acl/
backup/
cron/
mqueue/
public_html/
python26/
reporter/
repos/
scripts/
test/
.Xauthority
.Xresources
.bash_history
.bash_logout
.bash_profile
.bashrc
.csshrc
.lesshst
.mysql_history
.pylintrc
.screenrc
.smblogin
.sqlite_history
.toprc
.viminfo
.vimrc
csshrc.back
mbox
test.cpp
test.py
test.tar.gz
testIt.py
testite
test.o

相关内容