小编Luc*_*ulz的帖子

如何替换最近命令的第一个参数?

如果我在终端中运行这样的命令

$ tyop --count 3 --exact haveibeenpwned
Run Code Online (Sandbox Code Playgroud)

该命令返回错误代码,例如

command not found: tyop,

如何重新运行最后一个命令,将命令行参数保留--count 3 --exact haveibeenpwned为另一个命令名称(例如typo而不是tyop)?

$ typo --count 3 --exact haveibeenpwned
Run Code Online (Sandbox Code Playgroud)

如果可能的话,我正在寻找快捷方式或 shell 函数,例如!!!^

command-line shell

6
推荐指数
2
解决办法
1234
查看次数

如何使用列格式化单行?

我在文件phonebook.dat 中有一个基本的电话簿。

$ cat phonebook.dat
Onkh,Gregor:0123456789
Steinert,Franz:02473894091
Rubrecht,Magdalena:01474653371
Run Code Online (Sandbox Code Playgroud)

然后我可以使用格式化该文件column

$ column -t -s ",:" phonebook.dat
Onkh      Gregor     0123456789
Steinert  Franz      0247389409
Rubrecht  Magdalena  01474653371
Run Code Online (Sandbox Code Playgroud)

但是如果我只想输出文件的一行怎么办?基于页面mancolumn需要一个文件作为其最后一个参数。

我尝试解决这个问题,但使用例如sed替换“,”和“:”会产生不一致的结果,如下所示:

$ sed 's/,/\t/g; s/:/\t/g' telefonbuch.dat
Onkh    Gregor  0123456789
Steinert        Franz   02473894091
Rubrecht        Magdalena       01474653371
Run Code Online (Sandbox Code Playgroud)

如何使用 格式化文件中的单行column

command-line shell sed columns

5
推荐指数
1
解决办法
812
查看次数

如何查找多个文件中经常一起出现的关键词?

我想找到经常相互关联的关键词。

\n

例子

\n

一个目录包含 markdown 文件,每个文件的最后一行都有一些关键字:

\n
$ tail -n 1 file1.md\n#doctor #donkey #plants\n\n$ tail -n 1 file2.md\n#doctor #firework #university\n\n$ tail -n 1 file3.md\n#doctor #donkey #linux #plants\n
Run Code Online (Sandbox Code Playgroud)\n

伪输出

\n
    \n
  • 100%包含关键字“#donkey”的文件也包含关键字“#doctor”。
  • \n
  • 50% 包含关键字“#plants”的文件也包含关键字“#linux”。
  • \n
  • \xe2\x80\xa6
  • \n
\n
\n

一个 Shell 脚本、一个 awk 脚本或只是一个关于如何实现此目标的解释就足够了!

\n

任何帮助,将不胜感激。非常感谢

\n

shell grep sed awk text-processing

2
推荐指数
1
解决办法
424
查看次数

标签 统计

shell ×3

command-line ×2

sed ×2

awk ×1

columns ×1

grep ×1

text-processing ×1