Linux基础入门之sort命令详解

sort是在linux里非常常用的一个命令,将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ascii码值进行比较,最后将他们按升序输出。

这里有一个文件test,内容为:

8723 23423

321324 213432

23 234

123 231

234 1234

654 345234

    

1. sort的-t选项和-k选项

sort提供了-t选项,后面可以设定间隔符, -k来指定列数。

对第一列排序

sort test

对第二列进行排序

sort -k 2 test

如果将test文件的内容改为:

8723,23423

321324,213432

23,234

123,231

234,1234

654,345234

如果要对第二列按照大小排序

sort -t "," -k 2 test

如果没有-t选项的话,就是默认的空格或者tab键,因此上面就没有使用-t选项。

2. 倒序排列使用 -r 选项

sort默认的排序方式是升序,-r参数则是改成降序

sort -r test

输出结果:

8723 23423

654 345234

321324 213432

234 1234

23 234

123 231

3. sort的-n选项

sort默认按ASCII码值进行比较, 所以大家看上面2中的结果会发现, 8723 比 321324 却排在了最前面。 那我们如何让它按照数字大小排序呢?这时候就该-n参数出场了。

sort -n test

输出结果:

23 234

123 231

234 1234

654 345234

8723 23423

321324 213432

sort -rn test

输出结果:

321324 213432

8723 23423

654 345234

234 1234

123 231

23 234

附:sort命令参数详解

-f  将小写字母都转换为大写字母来进行比较,亦即忽略大小写

-c  检查文件是否已排好序,如果乱序,则输出第一个乱序的行的相关信息,最后返回1

-C  检查文件是否已排好序,如果乱序,不输出内容,仅返回1

-M  以月份来排序,比如JAN小于FEB等等

-b  忽略每一行前面的所有空白部分,从第一个可见字符开始比较

-u  在输出行中去除重复行, 不改变文件本身内容

以上就是Linux基础入门之sort命令详解的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/184172.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
如何设置谷歌浏览器主页 Chrome浏览器个性化配置详细教程
上一篇 2026年9月4日 08:53:50
linux ubuntu怎么安装mysql
下一篇 2026年9月4日 08:57:47

相关推荐

  • 查看Centos内存使用情况linux命令

    在使用centos版linux服务器时,遇到卡顿的情况可以通过检查内存使用情况来诊断问题。以下是几种查看centos内存使用情况的方法,让我们一起来看看吧! 1、cat /proc/meminfo 最简单的方法是通过/proc/meminfo查看RAM的使用情况。这个文件会动态更新,包含了许多内存相…

    2026年9月12日
    100
  • Linux如何定位网络连接超时的原因

    Linux如何定位网络连接超时的原因Linux如何定位网络连接超时的原因Linux如何定位网络连接超时的原因Linux如何定位网络连接超时的原因

    网络连接超时常见于Linux系统,需逐步排查网络配置、防火墙、DNS解析或远程服务问题。2. 使用ping命令测试目标主机连通性,区分网络不通与DNS解析问题。3. 通过telnet或nc检测端口开放状态,结合traceroute定位路径中断点。4. 检查本地iptables/nftables防火墙…

    2026年9月12日 用户投稿
    000
  • 如何在Linux中优化mysql启动参数

    根据服务器硬件和业务负载调整MySQL内存与I/O参数可显著提升性能。1. 内存方面:innodb_buffer_pool_size设为物理内存50%~70%,key_buffer_size针对MyISAM表设小值(32M~64M),query_cache_size在旧版本中按需启用,tmp_tab…

    2026年9月12日
    000
  • Linux如何抓取网络数据包tcpdump使用方法

    tcpdump是Linux下强大的网络抓包工具,用于故障排查与安全分析,支持接口监听、包过滤、保存及读取抓包文件,常用参数包括-i指定接口、-c限制数量、-n不解析主机名、-w保存数据、-r读取文件,并可通过BPF语法实现精确过滤,结合Wireshark可深度分析流量。 在Linux系统中,tcpd…

    2026年9月12日
    000
  • Linux如何管理snap安装的软件

    snap 是由 Canonical 推出的通用 Linux 打包格式,通过 snapd 服务管理,具备自动更新、沙箱隔离和跨发行版兼容特性。使用 snap list 可查看已安装的 snap 包,sudo snap install 安装软件,如 sudo snap install code &#82…

    2026年9月12日
    100
  • Linux文件权限rwx含义详解

    Linux文件权限rwx含义详解Linux文件权限rwx含义详解Linux文件权限rwx含义详解Linux文件权限rwx含义详解

    rwx权限是Linux系统安全的核心,分别代表读、写、执行三种操作,针对文件和目录有不同的作用:文件的r权限允许查看内容,w权限允许修改内容,x权限允许作为程序运行;目录的r权限允许列出其中文件,w权限允许在其中创建或删除文件,x权限允许进入该目录并访问其内部文件。权限分为所有者、所属组和其他用户三…

    2026年9月12日 用户投稿
    100
  • Linux如何检查用户的权限是否配置错误

    Linux如何检查用户的权限是否配置错误Linux如何检查用户的权限是否配置错误Linux如何检查用户的权限是否配置错误Linux如何检查用户的权限是否配置错误

    权限配置错误可能导致用户权限过高或过低,需逐层排查文件权限、ACL、SELinux/AppArmor、用户群组、SUID/SGID及挂载选项,遵循最小权限原则并使用配置管理工具避免风险。 Linux 用户权限配置错误,意味着用户可能无法执行某些他们应该可以执行的操作,或者更糟糕的是,可以执行他们不应…

    2026年9月12日 用户投稿
    200
  • VSCode怎么设置等宽字体_VSCode编辑器等宽字体与排版优化教程

    在VSCode中设置等宽字体需在settings.json中配置”editor.fontFamily”,推荐使用Fira Code、Cascadia Code等支持连字的字体以提升代码可读性与美观度。 在VSCode中设置等宽字体非常直接,你只需要在用户设置( setting…

    2026年9月12日
    200
  • 如何导出和导入VSCode的完整配置?

    备份VSCode配置需复制用户目录下的settings.json、keybindings.json、snippets文件夹,并导出扩展列表;2. 推荐使用内置Settings Sync功能,通过GitHub账号同步设置、扩展等;3. 注意检查路径依赖和敏感信息,确保迁移后扩展正常工作。 导出和导入V…

    2026年9月12日
    100
  • Linux怎么限制用户不能登录系统

    答案:限制Linux用户登录的核心方法是修改登录Shell或锁定密码。通过chsh命令将Shell设为/sbin/nologin或/bin/false,可阻止用户获得交互式Shell;使用passwd -l命令锁定密码,在/etc/shadow中添加!标记;也可用chage设置账户过期时间实现自动禁…

    2026年9月12日
    300
  • 为什么VSCode是开发者的首选编辑器?

    VSCode成为开发者首选因其轻量高效、启动快、资源占用低,基于Electron构建却优化出色,支持快速搜索、符号跳转、多光标编辑,原生集成Git,拥有海量扩展生态,覆盖主流语言与开发工具,通过Language Server Protocol实现智能补全与调试,配置灵活,跨平台开源免费,微软持续维护…

    2026年9月12日
    200
  • Linux怎么查看所有已安装的服务列表

    Linux怎么查看所有已安装的服务列表Linux怎么查看所有已安装的服务列表Linux怎么查看所有已安装的服务列表Linux怎么查看所有已安装的服务列表

    在Linux系统里,想知道到底有哪些服务在跑,或者哪些服务准备开机启动,这其实是个很基础但又很关键的问题。简单来说,最直接的办法就是用 systemctl 命令,它是现代Linux发行版(比如Ubuntu、CentOS、Debian等,只要是基于systemd的)管理服务的主力。敲一个 system…

    2026年9月12日 用户投稿
    100
  • 如何让VSCode启动得更快?

    禁用非必要扩展并优化配置可显著提升VSCode启动速度。首先通过“Developer: Show Running Extensions”查看启动时激活的扩展,关闭非必需项;在settings.json中设置”extensions.autoCheckUpdates”: fals…

    2026年9月12日
    100
  • Linux怎么同时管理rpm和deb两类软件包

    Linux怎么同时管理rpm和deb两类软件包Linux怎么同时管理rpm和deb两类软件包Linux怎么同时管理rpm和deb两类软件包Linux怎么同时管理rpm和deb两类软件包

    不能在Linux系统中混用RPM和DEB包,因两者互不兼容,应根据发行版选择对应包格式和管理%ignore_a_1%,如RPM系用dnf、DEB系用apt,并推荐使用容器化或配置管理工具实现跨系统部署,以避免依赖冲突和系统损坏。 在Linux系统中,不能也不建议同时混合管理RPM和DEB两类软件包。…

    2026年9月12日 用户投稿
    400
  • 如何在VSCode中拆分编辑器窗口?

    使用鼠标拖拽文件标签至蓝色高亮区可拆分窗口,支持左右上下布局;右键菜单提供“拆分到右侧”“拆分到下方”选项;快捷键Ctrl+(Cmd+)实现垂直拆分,Ctrl+1/2/3切换面板,Ctrl+W关闭面板;拖动分隔条调整大小,关闭所有文件后面板自动消失,可通过“文件→布局”重置视图。 在 VSCode …

    2026年9月12日
    000
  • Linux如何禁止用户使用su切换到root

    Linux如何禁止用户使用su切换到rootLinux如何禁止用户使用su切换到rootLinux如何禁止用户使用su切换到rootLinux如何禁止用户使用su切换到root

    答案:通过配置PAM的pam_wheel.so模块并结合wheel组管理,可限制仅特定用户能su到root,同时推荐使用sudo实现更细粒度的权限控制和审计。 在Linux系统中,禁止普通用户通过 su 命令切换到root用户,最常见且有效的方法是利用PAM(Pluggable Authentica…

    2026年9月12日 用户投稿
    300
  • Linux如何启动和停止指定服务

    Linux如何启动和停止指定服务Linux如何启动和停止指定服务Linux如何启动和停止指定服务Linux如何启动和停止指定服务

    答案是使用systemctl命令管理服务。启动服务用sudo systemctl start 服务名称;停止服务用sudo systemctl stop 服务名称;重启服务用sudo systemctl restart 服务名称,会中断服务;重载配置用sudo systemctl reload 服务…

    2026年9月12日 用户投稿
    200
  • Linux如何使用rpm安装单个软件包

    Linux如何使用rpm安装单个软件包Linux如何使用rpm安装单个软件包Linux如何使用rpm安装单个软件包Linux如何使用rpm安装单个软件包

    使用rpm命令可安装Linux软件包,但需手动处理依赖问题。首先确认.rpm文件路径,如httpd-2.4.6-97.el7.centos.x86_64.rpm位于/tmp目录,执行sudo rpm -ivh /tmp/httpd-2.4.6-97.el7.centos.x86_64.rpm进行安装…

    2026年9月12日 用户投稿
    300
  • Linux系统目录dev设备文件说明

    /dev目录存放设备文件,是Linux系统与硬件交互的接口,分为字符设备(如键盘)和块设备(如硬盘),通过udev动态管理,主次设备号标识设备类型与实例,常见文件如/dev/null、/dev/zero等用于特定数据处理。 在Linux系统中,/dev 目录用于存放设备文件,这些文件是系统中硬件设备…

    2026年9月12日
    100
  • 如何在Linux中数据去重 Linux fdupes重复查找

    fdupes 是 Linux 下用于查找和删除重复文件的高效工具,通过比较文件大小和 MD5 签名识别重复内容。需通过包管理器安装,如 Ubuntu 使用 sudo apt install fdupes。基本用法为 fdupes /path/to/directory,常用选项包括 -r(递归扫描)、…

    2026年9月12日
    100

发表回复

登录后才能评论
关注微信