linux - 从命令行保存某个字符串

标签 linux shell debian

<分区>

我正在编写一个 bash 脚本,当我从我的脚本中执行某个命令时,它会吐出一个这样的 ID

虚拟机 ID:12345

ID 总是不同的。我怎样才能提取 ID 的数量并将其存储在我的脚本中? 我试图在命令后添加一个“>file”,但它似乎不起作用。

最佳答案

因此,这取决于可能的 ID。

如果它始终是字符串中的第 3 项。

echo "VM ID: 12345" | awk '{print $3}' > file

如果输出始终是输出中唯一的数字,您可以使用 tr。

echo "VM ID: 12345" | tr -d '[:alpha:][:blank:][:punct:]'
12345

但是,如果字符串中有另一个数字,它将被添加。

echo "VM3 ID: 12345" | tr -d '[:alpha:][:blank:][:punct:]'
312345

你也可以制作一个模式,在第一个“:”之后获取数字

关于linux - 从命令行保存某个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47799385/

相关文章:

c - 访问可执行文件中的#ident 信息?

regex - 为什么这个正则表达式测试不起作用?

Java SWT - 在 shell 上使用 SWT.V_SCROLL 时 shell 的标题栏消失

PHP - 写入文件

mysql - 在服务器启动时插入 MySQL 行

r - 在 windows 和 linux 中使用 R 的不同结果

Python GTK 3+ 控制关闭窗口

Python - 执行 shell 命令在 Linux 上不起作用

shell - 在 shell 脚本中捕获 mysql 输出

linux - 什么可以使程序在 `strace` 内表现不同?