小编s.k*_*s.k的帖子

如何获取当前终端ID

相关:如何获取当前终端名称?

但我只想要当前终端的 ID,例如,当tty返回时/dev/pts/11我只想打印11

我们的想法是在 shell 提示符中在我的文件中的变量\u中的用户名后面添加此信息:PS1.bashrc

想要的结果:username11@localhost:~$

目前我有:

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u$(tty)@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
Run Code Online (Sandbox Code Playgroud)

这使:username/dev/pts/11@localhost:~$

bash ubuntu tty

9
推荐指数
1
解决办法
824
查看次数

使用 find exec 计算嵌套在 subdir 中的 csv 文件中的行数

我想find对一些嵌套的 csv 文件的结果运行两个管道命令,但我很惨地失败了。

这是一个想法:

$ find ./tmp/*/ -name '*.csv' -exec tail -n +2 {} | wc -l \;
Run Code Online (Sandbox Code Playgroud)

为了计算每个 CSV 文件的标题行。

该命令失败:

wc: ';': No such file or directory
find: missing argument to `-exec'
Run Code Online (Sandbox Code Playgroud)

for在这种情况下我真的需要做一个循环吗?
例如:

wc: ';': No such file or directory
find: missing argument to `-exec'
Run Code Online (Sandbox Code Playgroud)

但是这样我就失去了很好的输出,find其中确实包括计数中的文件名。

使用此解决方案时,我也丢失了文件名:find -exec 中的管道命令?

$ for f in ./tmp/*/*.csv; do tail -n +2 ${f} | wc -l; done
Run Code Online (Sandbox Code Playgroud)

一点精度;当我谈到打印的文件名时,这是因为我在单个文件上调用命令时习惯了以下结果:

$ tail -n +2 | …
Run Code Online (Sandbox Code Playgroud)

ubuntu pipe find exec

3
推荐指数
1
解决办法
99
查看次数

以可视方式对齐 CSV 文件的列

使用sedawk,是否可以直观地对齐 CSV 文件中的列?

例如:

例如来自:

a,b,c,some stuff,"some, other, stuff",d,2023-03-10 18:37:00
y,x,z,t,cool,thing,2022-04-12 21:44:00
Run Code Online (Sandbox Code Playgroud)

到:

a, b, c, some stuff,"some, other, stuff",     d, 2023-03-10 18:37:00<EOL>
x, y, z,          t,                cool, thing, 2022-04-12 21:44:00<EOL>
Run Code Online (Sandbox Code Playgroud)

有一些包含文本并带有逗号的双引号字段。

我尝试columnbsdmainutils,但它显然无法处理此类数据。

csv columns text-formatting

3
推荐指数
2
解决办法
1143
查看次数

在 Ubuntu 上使用 checkinstall 将 deb 文件构建安装到基于 Debian 的 docker 容器中

我在我的Ubuntu 22.04笔记本电脑上编译了一个C++软件,并用于checkinstall安装它。这会构建相应的.deb文件,这很好。

但现在我想将该.deb文件安装到基于“Debian GNU/Linux 11 (bullseye)”的 docker 容器中,并dpkg显示此错误:

# dpkg --install mypackage-8.0.0_20221030-1_amd64.deb 
dpkg-deb: error: archive 'mypackage-8.0.0_20221030-1_amd64.deb' uses unknown compression for member 'control.tar.zst', giving up
dpkg: error processing archive mypackage-8.0.0_20221030-1_amd64.deb (--install):
 dpkg-deb --control subprocess returned error exit status 2
Errors were encountered while processing:
 mypackage-8.0.0_20221030-1_amd64.deb
Run Code Online (Sandbox Code Playgroud)

如何将此.deb文件安装到我的容器中,而无需再次编译软件(这意味着将所有 C++ 构建工具安装到我的容器中,这是我想避免的......)?

ubuntu debian dpkg checkinstall deb

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

标签 统计

ubuntu ×3

bash ×1

checkinstall ×1

columns ×1

csv ×1

deb ×1

debian ×1

dpkg ×1

exec ×1

find ×1

pipe ×1

text-formatting ×1

tty ×1