请称我为梦想家,但想象一下这样一个世界:\n我们使用的“每个”CLI 工具都可以选择\xc2\xa0 生成 \xc2\xa0 稳定的输出(以 JSON 表示)。\xc2\xa0\n以编程方式使用 CLI 工具,例如ls, free, df,fdisk将是 a\xc2\xa0breeze。\xc2\xa0\nGNU 标准化参数语法约定的方式,\n它可以按照\n “--json生成根据 JSON 规范格式化的\xc2\xa0tool 特定报告”的方式标准化输出吗? ?\xc2\xa0\n这是否已经被尝试过并可能被拒绝?\xc2\xa0\n如果没有,我们如何推动这样的事情?
我有一个包含大量数据的 csv 文件。我希望为值 >=1 剪切第 9 列,然后使用 grep 显示匹配的完整行。
样本格式:
ABC,XYZ,RTY,CREAM,FRANCE,170019,ST REMY CREME,3035540005229,0.75,1,15,26.99,10
ABC,RDS,XSD,SPICE,NETHERLANDS,390476,THE KINGS GINGER,5010493025621,1.5,1,41,49.95,NA
ABC,RMS,DKS,TABLE WINE RED,CHILE,400176,SANTA ISABELA,63657001349,3,1,12.5,31.99,0
Run Code Online (Sandbox Code Playgroud)
我试过
grep . Myfile.csv |cut -d"," -f9 | sort |grep -E "^(1*[1-9][2-9]*(\.[2-9]+)?|1+\.[2-9]*[1-9][2-9]*)$"
Run Code Online (Sandbox Code Playgroud)
但它只显示第 9 列的值,而不是所有列的完整行。
并且
grep $(cut -d"," -f9 Myfile.csv | grep -E "^(1*[1-9][2-9]*(\.[2-9]+)?|1+\.[2-9]*[1-9][2-9]*)$") Myfile.csv
Run Code Online (Sandbox Code Playgroud)
任何帮助都会很棒。
PS:不能使用 awk (:-
我安装了标准ls,还安装了lsd,它是 ls 的书呆子字体替代品。我提到这一点是因为该错误可能与别名有关。
为了立即进行测试,我已经alias ls=ls删除了所有自定义命令。
如果我输入ls/etc 目录,其中显然有几个子文件夹(您可以在没有 -d 标志的情况下看到这些子文件夹),我会得到以下内容:
>>>root@Unraid:/etc# ls -d /
/
>>>root@Unraid:/etc# ls -d
.
>>>root@Unraid:/etc# lsd -d
./
>>>root@Unraid:/etc# lsd -d /
//
Run Code Online (Sandbox Code Playgroud)
丢失的代码点只是一个文件夹图标。为了清楚起见,我用浏览器兼容的表情符号替换了所有框。LSD 已经安装几天了,不是问题。他们的行为相同。
我在提示行前面加上前缀>>>只是为了让它们更容易挑选出来。
让我们以我的主目录为例。~正确答案是、lsd中有 2 个文件夹pkg
>>>root@Unraid:~# lsd
lsd/ pkg/ appdataUNRAID.code-workspace@ mdcmd@
>>>root@Unraid:~# ls -F
appdataUNRAID.code-workspace@ lsd/ mdcmd@ pkg/
>>>root@Unraid:~# lsd -F
lsd/ pkg/ appdataUNRAID.code-workspace@ mdcmd@
>>>root@Unraid:~# ls
appdataUNRAID.code-workspace lsd mdcmd pkg
>>>root@Unraid:~# ls -lhp
total 0
lrwxrwxrwx …Run Code Online (Sandbox Code Playgroud) 如果我制作了一个 Linux 发行版,我可以添加 Busybox 或除 GNU 之外的其他 UNIX 系统吗?或者 Linux 和 GNU 完全相互依赖吗?
我希望将仅包含这些文件的目录内的所有文件(所有文件都是常规文件 - 该目录内没有目录、符号链接等)复制到另一个预先存在的目录。
这些文件具有非常常见的名称,例如robots.txt,并且不遵循任何特定模式。
我尝试了类似的命令:
cp -a "$HOME"/a "$HOME"/b
Run Code Online (Sandbox Code Playgroud)
我知道这-a是一个快捷组合-d(保留模式、所有权和时间戳)以及-R命令递归复制。
如果复制是递归的,为什么不复制文件以及解决方案是什么?
我试图删除第 3 行之后的所有空行,直到文件末尾:
cat ${File}
1
2
3
4
5
5
6
7
8
9
sed -e '3,${s~^$~~g}' ${File}
1
2
3
4
5
5
6
7
8
9
Run Code Online (Sandbox Code Playgroud)
观察:输出没有变化。
期望输出
1
2
3
4
5
5
6
7
8
9
Run Code Online (Sandbox Code Playgroud)
我使用 Fedora。今天我发现了 GNU(在网上),直到昨天我才知道。我知道 GNU 是一个类 Unix 操作系统,它是自由软件,但我不明白为什么他们说 GNU 的“不是 Unix”。
我想知道为什么 Ubuntu 被称为“GNU/Linux”的发行版,尽管它提供了不属于 GNU GPL 许可证的专有图形驱动程序(和其他一些东西)。
GNU 项目 (gnu.org) 用作徽标的动物的名称是什么?
为什么选择这种动物来代表该项目?