㈠ linux sort命令参数及用法详解
Linux sort命令用于将文本文件内容加以排序,sort可针对文本文件的内容,以行为单位来排序。
sort命令的语法格式:sort[参数][文件]
Linux sort命令参数:
-b:忽略每行前面开始出的空格符号。
-c:检查文件是否已经按照顺序排序。
-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
-f:排序时,将小写字母视为大写字母。
-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
-m:将几个排序好的文件进行合并。
-M:将前面三个字母依照月份的缩写进行排序。
-n:依照数值的大小排序。
-u:意味着是唯一的,输出的结果是去完重了的。
-o:<输出文件>将排序后的结果存入指定的文件。
-r:以相反的顺序来排序。
-t:<分隔字符>指定排序时所用的栏位分隔字符。
㈡ linux系统下,按文件的大小进行排序的命令
ls -lAS
l 是按列显示许多参数
A是显示除了. 和..之外的所有文件
S是按照文件大小排序
㈢ linux怎么对138792排序
1.最常用:直接排序。2.输出排序并删除重复行。3.按照数值大小进行排序。4.按照倒序进行排列。5.高级操作:按照第几列进行排序。
由于sort默认是把结果输出到标准输出,所以需要用重定向才能将结果写入文件,形如sortfilename>newfile。但是,如果你想把排序结果输出到原文件中,用重定向可就不行了。
-f会将小写字母转换为大写字母来进行比较,亦即忽略大小写,-c会检查文件是否已排好序,如果乱序,则输出第一个乱序的行的相关信息,最后返回,-C会检查文件是否已排好序,如果乱序,不输出内容,仅返回,-M会以月份来排序,比如JAN小于FEB等等-b会忽略每一行前面的所有空白部分,从第一个可见字符开始比较。
㈣ Linux基本操作-----文件的排序+分割+合并+归档等
linux基本操作-----文件的排序+分割+合并+归档等1
sort
1
sort命令将输入文件看做由多条记录组成的数据流,而记录由可变宽度的字段组成,以换行符作为定界符
2
sort的命令的基本格式
sort
选项
文件
3
sort命令选项及其意义
选项
意义
-c
测试文件是否已经被排序
-k
指定排序的域
-m
合并两个已排序的文件
-n
根据数字大小进行排序
-o
输出文件
将输出写到指定的文件,相当于将输出重定向到指定的文件
-r
将排序结果逆向显示
-t
改变域分割符
-u
去除结果中的重复行2
uniq
1
uniq命令是用于去除文本的重复行,这类似于sort命令的-u选项
2
uniq命令的基本用法
uniq
选项
文件
3
uniq命令选项及其意义
选项
意义
-c
打印每行在文本中重复出现的次数
-d
只显示有重复的记录,每个重复记录只出现一次
-u
只显示没有重复的记录3
cut
1
cut命令用于从标准输入或文本文件中按域或行提取文本
2
cut命令的基本格式
cut
选项
文件
3
cut选项及其意义
选项
意义
-c
指定提取的字符数或字符范围
-f
指定提取的域或域的范围
-d
改变域分割符4
tar
1
tar命令是linux的归档命令,通俗的说tar命令实现了linux系统文件的压缩和解压缩
2
tar命令基本格式
tar
选项
文件名或目录名
3
tar命令选项及其意义
选项
意义
-c
创建新的包
-r
为包添加新的文件
-t
列出包内容
-u
更新包中的文件,若包中没有此文件,则将文件添加进包中
-x
解压缩文件
-v
详细报告tar处理的信息
-f
使用压缩文件或设备,该选项通常是必选的
-z
用gzip压缩和解压缩文件,如果是.gz结尾的tar包那么该选项是必须的
4
解压非gzip格式的压缩包
tar
-xvf
包名
解压gzip格式的压缩包
tar
-zxvf
包名
㈤ linux中sort命令的简单用方法
Sort命令的功能是对文件中的各行进行排序。Sort命令有许多非常实用的选项,这些选项最初是用来对数据库格式的文件内容进行各种排序操作的。实际上,Sort命令可以被认为是一个非常强大的数据管理工具,用来管理内容类似数据库记录的文件。 Sort命令将逐行对文件中的内容进行排序,如果两行的首字符相同,该命令将继续比较这两行的下一字符,如果还相同,将继续进行比较。 语法: Sort [选项] 文件 说明:Sort命令对指定文件中所有的行进行排序,并将结果显示在标准输出上。如不指定输入文件或使用"- ",则表示排序内容来自标准输入。 Sort排序是根据从输入行抽取的一个或多个关键字进行比较来完成的。排序关键字定义了用来排序的最小的字符序列。缺省情况下以整行为关键字按ASCII字符顺序进行排序。 改变缺省设置的选项主要有: - m 若给定文件已排好序,合并文件。 - c 检查给定文件是否已排好序,如果它们没有都排好序,则打印一个出错信息,并以状态值1退出。 - u 对排序后认为相同的行只留其中一行。 - o 输出文件 将排序输出写到输出文件中而不是标准输出,如果输出文件是输入文件之一,Sort先将该文件的内容写入一个临时文件,然后再排序和写输出结果。 改变缺省排序规则的选项主要有: - d 按字典顺序排序,比较时仅字母、数字、空格和制表符有意义。 - f 将小写字母与大写字母同等对待。 - I 忽略非打印字符。 - M 作为月份比较:"JAN"<"FEB" - r 按逆序输出排序结果。 +posl - pos2 指定一个或几个字段作为排序关键字,字段位置从posl开始,到pos2为止(包括posl,不包括pos2)。如不指定pos2,则关键字为从posl到行尾。字段和字符的位置从0开始。 - b 在每行中寻找排序关键字时忽略前导的空白(空格和制表符)。 - t separator 指定字符separator作为字段分隔符。 下面通过几个例子来讲述Sort的使用。 用Sort命令对text文件中各行排序后输出其结果。请注意,在原文件的第二、三行上的第一个单词完全相同,该命令将从它们的第二个单词vegetables与fruit的首字符处继续进行比较。 $ cat text vegetable soup fresh vegetables fresh fruit lowfat milk $ Sort text fresh fruit fresh vegetables lowfat milk vegetable soup 用户可以保存排序后的文件内容,或把排序后的文件内容输出至打印机。下例中用户把排序后的文件内容保存到名为result的文件中。 $ Sort text>result 以第2个字段作为排序关键字对文件example的内容进行排序。 $ Sort +1-2 example 对于file1和file2文件内容反向排序,结果放在outfile中,利用第2个字段的第一个字符作为排序关键字。 $ Sort -r -o outfile +1.0 -1.1 example Sort排序常用于在管道中与其他命令连用,组合完成比较复杂的功能,如利用管道将当前工作目录中的文件送给Sort进行排序,排序关键字是第6个至第8个字段。 $ ls - l | Sort +5 - 7 $ ps -e -o " comm pid time"|Sort -d //按照command的首字母的字母顺序排序 Sort命令也可以对标准输入进行操作。例如,如果您想把几个文件文本行合并,并对合并后的文本行进行排序,您可以首先用命令cat把多个文件合并,然后用管道操作把合并后的文本行输入给命令Sort,Sort命令将输出这些合并及排序后的文本行。在下面的例子中,文件veglist与文件 fruitlist的文本行经过合并与排序后被保存到文件clist中。
本文来自“Qi9电脑知识网”
㈥ Linux下常用文本处理命令
Linux下常用文本处理命令大全
Linux下面有很多经典的非常有用的命令,其中处理文本的命令就有很多。下面就让我们一起看看这些经典的Linux文本处理命令有哪些吧。
一. sort
文件排序, 通常用在管道中当过滤器来使用. 这个命令可以依据指定的关键字或指定的字符位置, 对文件行进行排序. 使用-m选项, 它将会合并预排序的输入文件. 想了解这个命令的全部参数请参考这个命令的info页.
二. tsort
拓扑排序, 读取以空格分隔的有序对, 并且依靠输入模式进行排序.
三. uniq
这个过滤器将会删除一个已排序文件中的重复行. 这个命令经常出现在sort命令的管道后边.
四. expand, unexpand
expand命令将会把每个tab转化为一个空格. 这个命令经常用在管道中.
unexpand命令将会把每个空格转化为一个tab. 效果与expand命令相反.
五. cut
一个从文件中提取特定域的工具. 这个命令与awk中使用的print $N命令很相似, 但是更受限. 在脚本中使用cut命令会比使用awk命令来得容易一些. 最重要的选项就是-d(字段定界符)和-f(域分隔符)选项.
六. paste
将多个文件, 以每个文件一列的形式合并到一个文件中, 合并后文件中的每一列就是原来的一个文件. 与cut结合使用, 经常用于创建系统log文件.
七. join
这个命令与paste命令属于同类命令. 但是它能够完成某些特殊的目地. 这个强力工具能够以一种特殊的形式来合并两个文件, 这种特殊的形式本质上就是一个关联数据库的简单版本.
join命令只能够操作两个文件. 它可以将那些具有特定标记域(通常是一个数字标签)的行合并起来, 并且将结果输出到stdout. 被加入的文件应该事先根据标记域进行排序以便于能够正确的匹配.
八. head
把文件的头部内容打印到stdout上(默认为10行, 可以自己修改). 这个命令有一些比较有趣的选项.
九. tail
将一个文件结尾部分的内容输出到stdout中(默认为10行). 通常用来跟踪一个系统logfile的.修改情况, 如果使用-f选项的话, 这个命令将会继续显示添加到文件中的行.
十. wc
wc可以统计文件或I/O流中的”单词数量”:
十一. fold
将输入按照指定宽度进行折行. 这里有一个非常有用的选项-s, 这个选项可以使用空格进行断行(译者: 事实上只有外文才需要使用空格断行, 中文是不需要的)(请参考例子 12-23和例子 A-1).
十二. fmt
一个简单的文件格式器, 通常用在管道中, 将一个比较长的文本行输出进行”折行”.
十三. col
这个命令用来滤除标准输入的反向换行符号. 这个工具还可以将空白用等价的tab来替换. col工具最主要的应用还是从特定的文本处理工具中过滤输出, 比如groff和tbl. (译者: 主要用来将man页转化为文本.)
十四. column
列格式化工具. 通过在合适的位置插入tab, 这个过滤工具会将列类型的文本转化为”易于打印”的表格式进行输出.
十五. colrm
列删除过滤器. 这个工具将会从文件中删除指定的列(列中的字符串)并且写到文件中, 如果指定的列不存在, 那么就回到stdout. colrm 2 4 <filename将会删除filename文件中每行的第2到第4列之间的所有字符. p=""> </filename将会删除filename文件中每行的第2到第4列之间的所有字符.>
Caution: 如果这个文件包含tab和不可打印字符, 那将会引起不可预期的行为. 在这种情况下, 应该通过管道的手段使用expand和unexpand来预处理colrm.
十六. nl
计算行号过滤器. nl filename将会把filename文件的所有内容都输出到stdout上, 但是会在每个非空行的前面加上连续的行号. 如果没有filename参数, 那么就操作stdin.
nl命令的输出与cat -n非常相似, 然而, 默认情况下nl不会列出空行.
十七. pr
格式化打印过滤器. 这个命令会将文件(或stdout)分页, 将它们分成合适的小块以便于硬拷贝打印或者在屏幕上浏览. 使用这个命令的不同的参数可以完成好多任务, 比如对行和列的操作, 加入行, 设置页边, 计算行号, 添加页眉, 合并文件等等. pr命令集合了许多命令的功能, 比如nl, paste, fold, column, 和expand.
pr -o 5 –width=65 fileZZZ | more 这个命令对fileZZZ进行了比较好的分页, 并且打印到屏幕上. 文件的缩进被设置为5, 总宽度设置为65.
一个非常有用的选项-d, 强制隔行打印(与sed -G效果相同).
十八. gettext
GNU gettext包是专门用来将程序的输出翻译或者本地化为不同国家语言的工具集. 在最开始的时候仅仅支持C语言, 现在已经支持了相当数量的其它程序语言和脚本语言.
想要查看gettext程序如何在shell脚本中使用. 请参考info页.
十九. msgfmt
一个产生二进制消息目录的程序. 这个命令主要用来本地化.
二十. iconv
一个可以将文件转化为不同编码格式(字符集)的工具. 这个命令主要用来本地化.
二十一. recode
可以认为这个命令是上边iconv命令的专业版本. 这个非常灵活的并可以把整个文件都转换为不同编码格式的工具并不是Linux标准安装的一部分.
二十二. TeX, gs
TeX和Postscript都是文本标记语言, 用来对打印和格式化的视频显示进行预拷贝.
TeX是Donald Knuth精心制作的排版系统. 通常情况下, 通过编写脚本的手段来把所有的选项和参数封装起来一起传到标记语言中是一件很方便的事情.
㈦ linux文件夹信息显示(大小、排序.....)
linux文件夹信息显示(大小、排序.....)方法一:ll
./*
|
sort
-k
5
-n
从小到大排列,如果需要从小到大加-r选项即可方法二:ls
-lSr
按文件大小降序排列linux
某个目录下的文件按大小排序1.
df
-lh2.
-s
/usr/*
|
sort
-rn这是按字节排序3.
-sh
/usr/*
|
sort
-rn这是按兆(M)来排序4.选出排在前面的10个
-s
/usr/*
|
sort
-rn
|
head5.选出排在后面的10个
-s
/usr/*
|
sort
-rn
|
tail说明:/usr/*也可以改成你想到达的任何目录如/usr/local/zhou/resin
这个目录就可以写成/usr/local/zhou/resin/*文件夹所占大小
.
-H
|grep
G
㈧ linux中如何对一个文本内容进行排序呢
功能说明:将文本文件内容加以排序。
语法:sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件]
补充说明:sort可针对文本文件的内容,以行为单位来排序。
参数:
-b 忽略每行前面开始出的空格字符。
-c 检查文件是否已经按照顺序排序。
-d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
-f 排序时,将小写字母视为大写字母。
-i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
-m 将几个排序好的文件进行合并。
-M 将前面3个字母依照月份的缩写进行排序。
-n 依照数值的大小排序。
-o<输出文件> 将排序后的结果存入指定的文件。
-r 以相反的顺序来排序。
-t<分隔字符> 指定排序时所用的栏位分隔字符。
+<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
--help 显示帮助。
--version 显示版本信息
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下面通过几个例子来讲述Sort的使用。
用Sort命令对text文件中各行排序后输出其结果。请注意,在原文件的第二、三行上的第一个单词完全相同,该命令将从它们的第二个单词vegetables与fruit的首字符处继续进行比较。
$ cat text
vegetable soup
fresh vegetables
fresh fruit
lowfat milk
$ Sort text
fresh fruit
fresh vegetables
lowfat milk
vegetable soup
用户可以保存排序后的文件内容,或把排序后的文件内容输出至打印机。下例中用户把排序后的文件内容保存到名为result的文件中。
$ Sort text>result
以第2个字段作为排序关键字对文件example的内容进行排序。
$ Sort +1-2 example
对于file1和file2文件内容反向排序,结果放在outfile中,利用第2个字段的第一个字符作为排序关键字。
$ Sort -r -o outfile +1.0 -1.1 example
Sort排序常用于在管道中与其他命令连用,组合完成比较复杂的功能,如利用管道将当前工作目录中的文件送给Sort进行排序,排序关键字是第6个至第8个字段。
$ ls - l | Sort +5 - 7
$ ps -e -o " comm pid time"|Sort -d //按照command的首字母的字母顺序排序
Sort命令也可以对标准输入进行操作。例如,如果您想把几个文件文本行合并,并对合并后的文本行进行排序,您可以首先用命令cat把多个文件合
并,然后用管道操作把合并后的文本行输入给命令Sort,Sort命令将输出这些合并及排序后的文本行。在下面的例子中,文件veglist与文件
fruitlist的文本行经过合并与排序后被保存到文件clist中。
$ cat veglist fruitlist | Sort > clist
㈨ 如何在Linux操作系统中根据斜杠/的数量对文本内容倒序排序呢
建议你这样试试看:
使用python的方式实现。
在你想要到倒序的linux文件夹位置。新建一个py文件(命令 vi reverse.py)
将代码复制上去。然后保存。
# coding=utf-8
import sys
def checkStr(str_source):
return sum(map(lambda check: '/'.count(check), str_source))
def sortByLen(s):
return len(s)
if __name__ == '__main__':
with open(sys.argv[1], 'r') as f:
total_list = f.readlines() # 遍历文件 生成列表
total_list.sort(key=sortByLen, reverse=True)
total_list.sort(key=checkStr, reverse=True)
with open(sys.argv[2], 'w') as b:
for info in total_list:
b.write(info)
if info[-1] != '
':
b.write('
')
保存完成后,在本文件夹中 运行
python3reverse.py000文件夹绝对路径列表.txt 新的倒序文件夹名字.txt 命令。去查看新的txt文件。就是你想要的倒序文件。
具体效果截图
注意事项:1.确定linux系统中有安装python3 在linux系统执行python3 命令,或者网络 很简单就可以测试. 2.记住复制上去的代码必须要符合python的缩进。
试试,如果好用,麻烦采纳,谢谢。