我对Linux非常陌生,我已经发现了很多关于如何在文件中进行字符计数的有用信息,但是Linux/终端中是否有一种方法可以根据每一行特定字符发生的次数对文本文件进行排序呢?
例如:
baseball
aardvark
a man a plan a canal panama
cat
bat
bill
按字母"a“的出现次数排序:
a man a plan a canal panama
aardvark
baseball
cat
bat
bill
对于"cat“和"bat”一次出现"a“的情况,我不关心等号行的顺序是否被颠倒,只是对按字符频率排列的一般行感兴趣。
我在文件名和文件夹名的开头使用下划线将它们标记为“特殊”。但是这种排序并不适用于Linux下的大多数程序。我尝试过LC_COLLATE=C ls和其他地区,但结果有些奇怪。假设我有这些文件夹:
2
A
_F
G
K
S
x4
这是ls的排序顺序。当我使用LC_COLLATE=C ls时,我有以下内容:
2
A
G
K
S
_F
x4
我已经在Xubuntu18.04下使用xfce终端模拟器在2台机器上。
这里怎么了?
我正在尝试捕获linux中"sort -c“的输出。我试着将它重定向到一个文件中,使用了tee命令,但两者都没有帮助。有什么建议吗?
例如:
roor>cat db | sort -c
sort: -:319: disorder: 1842251880: aa bb bc dd ee
以下操作无法给出输出
roor>cat db | sort -c > fileName
roor>cat db | sort -c |tee fileName
示例文件:
>cat file
111 aa as sdasd
222 sadf dzfasf af
33
我有一个linux文件,其内容如下:
hey this
is just
sample file
我想:
1.根据第二个单词对这三行进行排序,因此输出应该是:
sample file
is just
hey this
2.根据第二行的第二个字符对这三行进行排序,因此输出如下:
hey this
sample file
is just
我是否可以在命令行上运行perl/unix命令(使用管道并不重要)?
有没有一种方法可以在Emacs模式中批量反转标题的顺序?我想更改这类列表(,但要大得多,而不仅仅是两三项,因此“散装”):
* personal computer
* Windows
* Mac
* Linux
* StackExchange
* stackoverflow
* countries
* people
对此:
* people
* countries
* StackExchange
* stackoverflow
* personal computer
* Windows
* Mac
* Linux
我有一个命令,它可以处理文本文件,计数所有出现的单词,然后按如下方式打印出来:
user@box $˜ magic-command-i-forgot | with grep | and awk | sort ./textfile.txt
66: the
54: and
32: I
16: unix
12: bash
5: internet
3: sh
1: GNU/Linux
所以它不逐行搜索,而是逐字逐句地搜索,它对所有的单词都是这样做的,而不仅仅是一个单词。我很久以前就在网上找到了它,但我找不到,也记不起来。