热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux中如何使用ls命令列出文件?(代码示例)-linux运维

ls命令是任何Linux用户应该知道的基本命令之一;它用于列出有关文件系统中的文件和目录的信息。下面本篇文章就来带大家了解在Linux中使用ls命令的方法,希望对大家有所帮助。
ls命令是任何Linux用户应该知道的基本命令之一;它用于列出有关文件系统中的文件和目录的信息。下面本篇文章就来带大家了解在Linux中使用ls命令的方法,希望对大家有所帮助。

如何使用ls命令?

ls命令的语法如下:

ls [OPTIONS] [FILES]

ls命令有许多[OPTIONS]选项,下面是一些常用的选项:

● -l:可以使ls在长列表格式下列出文件。

● -a:显示所有文件及目录,包括因此的文件。

● -t:将文件依建立(修改)时间之先后次序列出。

● -r:将文件以相反次序显示(原定依英文字母次序)。

● -R:若目录下有文件,则其中的文件依序列出。

当没有参数使用时,ls命令将按字母顺序,列出当前工作目录中所有文件的名称。

ls

输出:

cache  empty  games  lib  local  mail  opt  run

要列出特定目录中的文件,需要将目录的路径传递给ls命令。例如,要列出目录/etc的内容,需要键入:

ls /etc

还可以将多个目录和文件传递给以空格分隔的ls命令:

ls /etc /var /etc/passwd

如果登录的用户没有对该目录的读取权限,则用户将收到一条消息,指出ls命令无法打开该目录:

ls /root

输出:

ls: cannot open directory '/root': Permission denied

如何列出长清单格式?

ls命令的默认输出仅显示文件的名称,这些信息的信息量不大。但使用长列表格式时,ls命令将显示以下文件信息:

● 文件类型

● 文件权限

● 文件的硬链接数

● 文件所有者

● 文件组

● 文件大小

● 日期和时间

● 文件名

我们可以使用-l(小写L)选项来使ls在长列表格式输出文件信息。例如:

ls -l /etc/hosts

输出:

-rw-r--r-- 1 root root 337 Oct  4 11:31 /etc/hosts

说明:让我们解释一下输出信息

1、第一个字符‘-’显示文件类型

在我们的示例中,第一个字符是-,表示常规文件。其他文件类型的值如下:

● -:常规文件

● b:阻止特殊文件

● c:角色特殊文件

● d:目录

● l:符号链接

● n:网络文件

● p:FIFO

● s:插座

2、九个字符(rw-r--r--)显示文件权限

前三个字符用于用户,后三个用于组,最后三个字符用于其他人。我们可以使用chmod命令更改文件权限;权限字符可以采用以下值:

● r:读取文件的权限

● w:写入文件的权限

● x:执行文件的权限

● s:setgid位

● t:粘性

在我们的示例中,rw-r--r--表示用户可以读取和写入文件,而组和其他人只能读取文件。而,九个字符(rw-r--r--)后的数量1允许的字符后的硬链接到该文件的数量。

3、root root 337

两个字段root root显示文件所有者和组,后面是文件大小(337),以字节为单位。如果要以可读格式输出尺寸,需要使用-h选项。用户可以使用chmod命令更改文件所有者。

4、Oct 4 11:31

Oct 4 11:31是文件的最后修改日期和时间。

5、/etc/hosts

/etc/hosts是文件的名称。

如何显示隐藏文件?

在Linux中,隐藏文件是以点(.)开头的任何文件;而默认情况下,ls命令是不会显示隐藏文件的。

如何要显示所有文件,包括隐藏文件,就需要使用-a选项:

ls -la ~/

输出:

drwxr-x--- 10 linuxize  linuxize  4096 Feb 12 16:28 .
drwxr-xr-x 18 linuxize  linuxize  4096 Dec 26 09:21 ..
-rw-------  1 linuxize  linuxize  1630 Nov 18  2017 .bash_history
drwxr-xr-x  2 linuxize  linuxize  4096 Jul 20  2018  bin
drwxr-xr-x  2 linuxize  linuxize  4096 Jul 20  2018  Desktop
drwxr-xr-x  4 linuxize  linuxize  4096 Dec 12  2017 .npm
drwx------  2 linuxize  linuxize  4096 Mar  4  2018 .ssh

我们还使用该-l选项显示所有文件的详细信息。

如何修改ls输出顺序?

默认情况下,ls命令按字母顺序列出文件;但我们也可以修改输出顺序:

● --sort=extension(或-X):按条目扩展名按字母顺序排序

● --sort=size(或-S):按文件大小排序

● --sort=time(或-t):按修改时间排序

● --sort=version(或-v):文本中的自然类型(版本)数字

如果要以反向排序顺序获取结果,需要使用-r选项。

例如,要按照反向排序顺序按修改时间对/var目录中的文件进行排序,将使用:

ls -ltr /var

值得一提的是,ls命令没有显示目录内容占用的总空间。

如何递归列出子目录?

使用-R选项告诉ls命令显示子目录的内容:

ls -R

相关视频教程推荐:《Linux教程》

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注 第一PHP社区 相关教程栏目!!!

以上就是Linux中如何使用ls命令列出文件?(代码示例)的详细内容,更多请关注 第一PHP社区 其它相关文章!


推荐阅读
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 海马s5近光灯能否直接更换为H7?
    本文主要介绍了海马s5车型的近光灯是否可以直接更换为H7灯泡,并提供了完整的教程下载地址。此外,还详细讲解了DSP功能函数中的数据拷贝、数据填充和浮点数转换为定点数的相关内容。 ... [详细]
  • 【前端工具】nodejs+npm+vue 安装(windows)
    预备先看看这几个是干嘛的,相互的关系是啥。nodejs是语言,类比到php。npm是个包管理,类比到composer。vue是个框架&# ... [详细]
  • linux 禁止指定ip访问
    linux中如何禁止指定的ip访问呢?比如被别人暴力破解,被别人使用不同的密码尝试登录:所以我想直接禁用这些ip的访问.怎么办呢?解决方案:修改配置文件etchosts.deny把 ... [详细]
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
  • 必须先赞下国人npm库作品:node-images(https:github.comzhangyuanweinode-images),封装了跨平台的C++逻辑,形成nodejsAP ... [详细]
  • docker容器的数据管理一:数据卷实现数据的永久化,完全独立于容 ... [详细]
  • vuecli创建项目(详情步骤)
    1、安装node环境2、下载vue和vue-cli脚手架命令行输入npm ... [详细]
  • systemd-nspawn可以创建最轻量级的容器(ns的意思就是namespace),本文的实验平台是Ubuntu16.04,x86_64机器。本文的目的是:在Ubuntu中用syst ... [详细]
  • 我创建了一个SSH密钥,当我以admin身份在GitBash中运行ssh-Tgit@gitlab.com时,我得到W ... [详细]
  • 对于一般的扩展包,我们一般直接pipinstallxxx即可安装,但是unrar直接安装后,发现并不能通过Python程序实现解压的功能& ... [详细]
  • MySQL5.6.40在CentOS764下安装过程 ... [详细]
author-avatar
mobiledu2502907083
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有