这是我的 list.txt:
a 100
b 300
A 50
e 75
1 10
Run Code Online (Sandbox Code Playgroud)
我运行了以下命令:
sort -k2,2 list.txt
Run Code Online (Sandbox Code Playgroud)
这是我得到的:
1 10
a 100
b 300
A 50
e 75
Run Code Online (Sandbox Code Playgroud)
我试图只对第二列进行排序。根据维基百科,我上面的命令应该给我下面的结果。
a 10
b 50
A 75
e 100
1 300
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
$ grep a{2,} alphabet.txt
grep: a: No such file or directory
$cat alphabet.txt
abcdefghijklnmopqrstuvwxyz
Run Code Online (Sandbox Code Playgroud)
我的字母表.txt 包含一个从 a 到 z 的行。a{2,} 不是表示匹配 aaa* 吗?但是,grep
它甚至不起作用。
我的 a.txt 包含以下内容:
apple
123
pear
1234
Run Code Online (Sandbox Code Playgroud)
如果我在下面运行这个命令,
sed 's/123/AAA/p' a.txt
Run Code Online (Sandbox Code Playgroud)
我以为我会得到
apple
123
AAA
pear
1234
AAA4
Run Code Online (Sandbox Code Playgroud)
因为 sed 默认会自动打印每一行。在模式空间中修改之后,我期待我的修改输出。但我的实际输出打印了两次替换:
apple
AAA
AAA
pear
AAA4
AAA4
Run Code Online (Sandbox Code Playgroud)
这是为什么?
ls -l *.txt | wc -l | tee count.txt
ls -l *.txt | wc -l > tee count.txt
Run Code Online (Sandbox Code Playgroud)
我正在学习基本的 Unix 命令。我认为提到的这两个命令会做同样的事情,但他们没有。只有第一个命令写入 count.txt。为什么第二个命令中使用的输出重定向没有做任何事情?