我有一个数据列表,比如
12345
23456
67891
-20000
200
600
20
...
Run Code Online (Sandbox Code Playgroud)
假设这个数据集的大小(即文件的行数)是N
. 我想m
从这个数据文件中随机绘制线条。所以输出应该是两个文件,一个是包含这m
几行数据的文件,一个是包含这些行数据的文件N-m
。
有没有办法使用 Linux 命令来做到这一点?
可能的重复:
Linux 工具将文件视为集合并对它们执行集合操作
我有两个数据集,A 和 B。每个数据集的格式是每行一个数字。例如,
12345
23456
67891
2345900
12345
Run Code Online (Sandbox Code Playgroud)
A 中的一些数据未包含在数据集 B 中。如何列出 A 中的所有这些数据,以及如何列出 A 和 B 共享的所有数据。我如何使用 Linux/UNIX 命令来做到这一点?
我试图找到两个纯数据文件的交集,从之前的帖子中发现可以通过
comm -12 <(sort test1.list) < (sort test2.list)
Run Code Online (Sandbox Code Playgroud)
在我看来,sort test1.list
目的是按顺序对 test1.list 进行排序。为了了解sort
工作原理,我尝试sort
将以下文件 test1.list 作为sort test1.list > test2.list
100
-200
300
2
92
15
340
Run Code Online (Sandbox Code Playgroud)
然而,事实证明 test2.list 是
100
15
2
-200
300
340
92
Run Code Online (Sandbox Code Playgroud)
这个重新排序的列表让我很困惑这种排序是如何工作的,以及 sort 和 comm 是如何一起工作的。
我有一个数据文件,比如
7
2
10
9
10
3
2
4
2
4
6
Run Code Online (Sandbox Code Playgroud)
每行都有一个值。我想计算每个值的出现次数。例如,10 在这个文件中出现了两次。
在linux下有没有一种简单的方法可以在不编写正式的计数程序的情况下做到这一点?
我需要计算文件夹下的文件数并使用以下命令。
cd testfolder
bash-4.1$ ls | wc -l
6
Run Code Online (Sandbox Code Playgroud)
其实这个文件夹下只有五个文件,
bash-4.1$ ls
total 44
-rw-r--r-- 1 comp 11595 Sep 4 22:51 30.xls.txt
-rw-r--r-- 1 comp 14492 Sep 4 22:51 A.pdf.txt
-rw-r--r-- 1 comp 8160 Sep 4 22:51 comparison.docx.txt
-rw-r--r-- 1 comp 903 Sep 4 22:51 Survey.pdf.txt
-rw-r--r-- 1 comp 1206 Sep 4 22:51 Steam Table.xls.txt
Run Code Online (Sandbox Code Playgroud)
看起来ls | wc -l
甚至将其total 44
视为文件,这是不正确的。
关于以下find
命令行
find . -type f -exec grep -l strings {} \;
Run Code Online (Sandbox Code Playgroud)
我不明白-exec
and的用法{} \
。
在阅读hadoop管理的bash脚本时,发现如下
if [ ! -d "${HADOOP_HOME}" ]; then
if [ -d "${CDH_HADOOP_HOME}" ]; then
Run Code Online (Sandbox Code Playgroud)
是什么! -d "${HADOOP_HOME}"
和-d "${CDH_HADOOP_HOME}
立场?
有一个文件夹可供多个用户访问。如果有文件被删除,是否可以知道哪个用户以及何时删除了该文件?谢谢。
linux ×6
shell ×5
command-line ×4
bash ×1
comm ×1
files ×1
filesystems ×1
find ×1
grep ×1
ls ×1
sort ×1
statistics ×1
wc ×1