我正在尝试进行基准测试以比较处理文件的两种不同方式。我有少量输入数据,但为了获得良好的比较,我需要多次重复测试。
与其只是重复测试,我还想多次复制输入数据(例如 1000 次),这样 3 行文件就变成了 3000 行,这样我就可以运行更令人满意的测试。
我通过文件名传递输入数据:
mycommand input-data.txt
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用jq
per here加载 JSON 文件。它非常简单,并且有效:
$ cat ~/Downloads/json.txt | jq '.name'
"web"
Run Code Online (Sandbox Code Playgroud)
但是,我需要将此变量的输出分配给命令。我试图这样做,这有效:
$ my_json=`cat ~/Downloads/json.txt | jq '.name'`
$ myfile=~/Downloads/$my_json.txt
$ echo $myfile
/home/qut/Downloads/"web".txt
Run Code Online (Sandbox Code Playgroud)
但我想要/home/qut/Downloads/web.txt
。
如何删除引号,即更改"web"
为web
?
是否有任何命令只打印apt-get autoremove
选择的包的名称?我正在创建一个脚本来更新内核、删除旧内核和不必要的包 ( apt-get autoremove
),但我想在屏幕上打印将由 删除的包列表,apt-get autoremove
我该怎么做?
我有一个包含以下内容的文件:
(((jfojfojeojfow
//
hellow_rld
(((jfojfojeojfow
//
hellow_rld
Run Code Online (Sandbox Code Playgroud)
如何提取以括号开头的每一行?
有没有办法在同一行上打印多行输出(单输出)?
例如,如果输出是:
abc
def
qwerty
Run Code Online (Sandbox Code Playgroud)
是否可以打印:
abcdefqwerty
Run Code Online (Sandbox Code Playgroud) 我有一个包含大约 1000 万行的文件。
我想删除文件中少于六个字符的所有行。
我该怎么做呢?
在有很多行的文件中,我想删除以HERE IT IS
.
如何仅使用命令行工具执行此操作?
例如我有 file 1.txt
,其中包含:
Moscow
Astana
Tokyo
Ottawa
Run Code Online (Sandbox Code Playgroud)
我想将所有字符的数量计算为:
a - 4,
b - 0,
c - 1,
...
z - 0
Run Code Online (Sandbox Code Playgroud) 我很想知道 2016 年我花在笔记本电脑上的总时间。
last reboot --since 2016-01-01 --until 2016-12-31 | grep -o '(.*)' | grep -v '-'
Run Code Online (Sandbox Code Playgroud)
以这种格式给我笔记本电脑的总正常运行时间:
(01:33)
(04:40)
(01:31)
(1+06:41)
(02:47)
(00:30)
Run Code Online (Sandbox Code Playgroud)
现在我如何添加它?
text-processing ×10
command-line ×8
bash ×3
scripts ×2
apt ×1
grep ×1
json ×1
regex ×1
sed ×1
time ×1