我想要一个完整的、排序的 bash 历史列表。但是有一些问题:
history,列表永远不会显示完整的列表,只显示 1000 个命令。当我想 从我的历史记录中创建一个排序的.txt文件时,我会这样做:
history | sort > History.txt
Run Code Online (Sandbox Code Playgroud)
但是由于数字,命令不是按字母顺序排序的,而是按数字排序的。
有什么办法可以做我想做的事吗?
我正在尝试按照本指南从终端查看前 5 列:https : //chrisjean.com/view-csv-data-from-the-command-line/
当我跑
cat rangelast.csv | sed -e 's/,,/, ,/g' | column -s, -t | less -#5 -N -S
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
column: line too long
Run Code Online (Sandbox Code Playgroud)
我该如何解决?
Ubuntu 中是否有命令行或工具可以在 80mb 文件中“查找和替换”大约 150000 次的单词?
我想替换http://www.old-domain.com/subfolderA为http://www.new-domain.com/subfolderB
我用 gEdit 和 Atom 尝试过,但都崩溃了。
我需要一个单行命令来编译和打印日志文件中列出的所有消耗性运载火箭名称。
ELV 名称都在/elv目录下以大写字母列出。
输出应以每行一个名称的格式出现,没有重复:
ALICE
BOB
CHARLIE
Run Code Online (Sandbox Code Playgroud)
我试过
grep "GET" NASA_access_log_Aug95.txt | grep "ELV" | wc -l
Run Code Online (Sandbox Code Playgroud)
但它只向我显示了 ELV 的数量,没有打印 ELV 名称
以下是我的日志文件示例NASA_access_log_Aug95.txt:
cc-rd6-mg1-dip4-9.massey.ac.nz - - [03/Aug/1995:20:43:31 -0400] "GET /elv/TITAN/mars1s.jpg HTTP/1.0" 200 1156
www-a2.proxy.aol.com - - [03/Aug/1995:20:43:31 -0400] "GET /elv/DELTA/dsolids.jpg HTTP/1.0" 200 24558
cc-rd6-mg1-dip4-9.massey.ac.nz - - [03/Aug/1995:20:43:32 -0400] "GET /elv/TITAN/mars3s.jpg HTTP/1.0" 200 1744
castor.gel.usherb.ca - - [03/Aug/1995:20:43:33 -0400] "GET /shuttle/missions/51-l/movies/ HTTP/1.0" 200 372
cc-rd6-mg1-dip4-9.massey.ac.nz - - [03/Aug/1995:20:43:33 -0400] "GET /elv/ATLAS_CENTAUR/atc69s.jpg HTTP/1.0" 200 1659
cc-rd6-mg1-dip4-9.massey.ac.nz - - …Run Code Online (Sandbox Code Playgroud) 有一个受 ROT13 影响的文本,称为rot.txt. ROT13(旋转 13 位)用字母表中的 13 个字母替换一个字母。如何编写命令来查看实际文本?
我试过:
cat rot.txt | tr 'A-Za-z' 'N-ZA-Mn-za-m'
Run Code Online (Sandbox Code Playgroud)
但没有成功
在终端中,如何在单个命令中将现有文件中的第 3、4 和 5 行保存到新文件中?
我有一个由存储库管理工具的输出制成的文本文件aptly,其中列出了我发布的存储库,我需要从中提取信息。
文件格式如下:
Published repositories:
* test_repo_one/xenial [i386,amd64] publishes {main: [xenial-main_20190311]: Snapshot from mirror [xenial-main]: http//gb.archive.ubuntu.com/ubuntu/ xenial [src]}, {multiverse: [xenial-multiverse_20190311]: Snapshot from mirror [xenial-multiverse]: http//gb.archive.ubuntu.com/ubuntu/ xenial [src]}, {restricted: [xenial-restricted_20190311]: Snapshot from mirror [xenial-restricted]: http//gb.archive.ubuntu.com/ubuntu/ xenial [src]}, {universe: [xenial-universe_20190311]: Snapshot from mirror [xenial-universe]: http//gb.archive.ubuntu.com/ubuntu/ xenial [src]}
* test_repo_one/xenial-security [i386,amd64] publishes {main: [xenial-security-main_20190311]: Snapshot from mirror [xenial-security-main]: http//gb.archive.ubuntu.com/ubuntu/ xenial-security[src]}, {multiverse: [xenial-security-multiverse_20190311]: Snapshot from mirror [xenial-security-multiverse]: http//gb.archive.ubuntu.com/ubuntu/ xenial-security[src]}, {restricted: [xenial-security-restricted_20190311]: Snapshot from mirror [xenial-security-restricted]: http//gb.archive.ubuntu.com/ubuntu/ xenial-security[src]}, {universe: [xenial-security-universe_20190311]: Snapshot from mirror [xenial-security-universe]: …Run Code Online (Sandbox Code Playgroud) 我有一个 csv 文件,看起来像:
data/train/4/36280.png,four
data/train/2/10317.png,two
data/train/2/57890.png,two
data/train/1/53448.png,one
data/train/8/58233.png,eight
data/train/4/23599.png,four
data/train/2/35051.png,two
data/train/1/12323.png,one
data/train/9/18562.png,nine
data/train/8/46629.png,eight
data/train/7/1746.png,seven
Run Code Online (Sandbox Code Playgroud)
其中第一列是路径,第二列是类。我想有条件地更改第二列。在伪代码中,我想要类似的东西:
If second column "four" change it to the next row's class
Run Code Online (Sandbox Code Playgroud)
到目前为止,我只是想看看我是否可以将 ne 类更改为另一个类,但没有成功:
awk '{ if ($2 == "zero") $2="one"; print $0 }' train.csv > new_file.csv
Run Code Online (Sandbox Code Playgroud)
给我同样的csv。
基本上我想要一个脚本,它给我以下输出 csv:
data/train/4/36280.png,seven
data/train/2/10317.png,four
data/train/2/57890.png,two
data/train/1/53448.png,two
data/train/8/58233.png,one
data/train/4/23599.png,eight
data/train/2/35051.png,four
data/train/1/12323.png,two
data/train/9/18562.png,one
data/train/8/46629.png,nine
data/train/7/1746.png,eight
Run Code Online (Sandbox Code Playgroud) <filename>我有大约 4000 个 XML 文件,我需要替换和字段的值<path>。我需要动态替换这些字段。例如images0001.xml应该images0001在两个字段内,images0002.xml应该在images0002两个字段内,等等。
我已经使用此命令按顺序重命名文件:
rename 's/.+/our $i; sprintf("images%04d.jpg", 1+$i++)/e' *
Run Code Online (Sandbox Code Playgroud)
我还使用此命令删除了.jpg我试图更改的两个字段中的扩展名:
sed -i 's/.jpg//g' Annotations/*
Run Code Online (Sandbox Code Playgroud)
以下是 XML 文件内容的当前状态:
rename 's/.+/our $i; sprintf("images%04d.jpg", 1+$i++)/e' *
Run Code Online (Sandbox Code Playgroud)
这是我需要更改文件的方式:
sed -i 's/.jpg//g' Annotations/*
Run Code Online (Sandbox Code Playgroud)
我正在寻找一种在命令行中执行此操作的方法,但搜索了一段时间后我无法找到解决方案!
任何帮助将不胜感激。提前致谢!
您好,我需要在 300k 行的模式中添加双引号。我正在尝试使用 sed,并且在这里阅读了多个查询和其他来源,但我似乎无法理解它的语法。
我有:
chr1 StringTie exon 191964 192299 1000 - . gene_id MSTRG.201; transcript_id MSTRG.201.53; exon_number 2;
chrY StringTie exon 26420508 26420531 1000 + . gene_id MSTRG.49889; transcript_id MSTRG.49889.11; exon_number 1;
Run Code Online (Sandbox Code Playgroud)
我需要:
chr1 StringTie exon 191964 192299 1000 - . gene_id "MSTRG.201"; transcript_id "MSTRG.201.53"; exon_number 2;
chrY StringTie exon 26420508 26420531 1000 + . gene_id "MSTRG.49889"; transcript_id "MSTRG.49889.11"; exon_number 1;
Run Code Online (Sandbox Code Playgroud)
我使用 sed 如下:
sed 's/MSTRG./"MSTRG."/g' filename
Run Code Online (Sandbox Code Playgroud)
但我只能得到:
chr1 StringTie exon 191964 192299 1000 - . gene_id "MSTRG."201; transcript_id …Run Code Online (Sandbox Code Playgroud) text-processing ×10
command-line ×8
awk ×2
csv ×2
sed ×2
bash ×1
bash-history ×1
sort ×1
xml ×1