- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
每当我在 Windows cmd 上的 Go 中运行 fmt.Print("\033c")
时,它不会清除屏幕,而是在我执行 console 时打印
在 javascript 中它工作正常。c
。 log("\033c")
根据以下链接,这应该有效: https://en.wikipedia.org/wiki/ANSI_escape_code#Windows
https://learn.microsoft.com/en-us/windows/console/console-virtual-terminal-sequences#samples
我已经尝试在 javascript 中记录它并且它工作正常我还尝试在打印 c
的末尾添加一个\n 字符并将其更改为也刚刚打印的\x1bc:c
以下所有打印:c
on windows cmd
func main() {
fmt.Print("\033c")
fmt.Print("\033c\n")
fmt.Print("\x1bc")
fmt.Print("\x1bc\n")
fmt.Println("\033c")
fmt.Println("\x1bc")
}
我预计它会像在 javascript 中那样清除屏幕,但由于某些原因它没有
澄清一下,我说的是 ANSI escape code不工作。
最佳答案
问题是 Windows 需要 ENABLE_VIRTUAL_TERMINAL_PROCESSING(0x0004) 控制台标志,我通过使用以下代码将标志添加到控制台来修复它:
package main
// #include "Windows.h"
import "C"
import "fmt"
func main() {
// Needed for getting handle and getting current console mode
var mode C.DWORD
handle := C.GetStdHandle(C.STD_OUTPUT_HANDLE)
C.GetConsoleMode(handle, &mode)
// Enable Virtual Terminal Processing by adding the flag to the current mode
C.SetConsoleMode(handle, mode|0x0004)
fmt.Print("\033c")
}
===编辑===
就像注释中提到的 Matmarbon //#include "Windows.h"
行是必需的,你需要安装一个 gcc
关于windows - Golang fmt.Print ("\033c") 和 fmt.Print ("\x1bc") 没有清除屏幕(ANSI Escape 代码不起作用)如何修复?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56460651/
我试图在多台主机上运行这个脚本,但它们没有安装 bc。 我读到你可以使用类似“awk 'BEGIN {print...}' 的东西,但我无法让它工作。 #!/bin/bash nproc=$(npro
我试图找到一个正则表达式来匹配具有字符串“question”但不具有或不包含字符串“ion”的所有字符组合。 例子: questionxxxx ------>匹配 xxxquestion-------
我可以使用 Python 运行 bc,代码如下: subprocess.Popen("bc", stdout=subprocess.PIPE).communicate()[0] 但是,这只会启动 bc
我们使用API在Dynamic 365 BC中处理采购数据,以更新、接收和开具采购订单行。(Dynamic 365插件在不使用文件的情况下解析附注附件XML)我们现在希望将发票文档作为附件上传到采购发
我正在尝试使用 bc 将我的数字计算缩放到一位小数(所有适用的四舍五入) linux下的命令。这是我的测试表达式: echo "scale 1; 90 - 70.333" | bc 但是,我最终得到了
jack 10 10号 A 20 卢卡20 A Bc U 20 我想得到这些数字的总和:10 + 10 + 20 + 20 + 20 = 80 但是我不能使用cat input|cut -d " "
我正在用 C# 实现一些东西,对此我有一个单独的规范,并且对我需要做什么有相当清楚的了解,但同时作为引用,我有一个 Java 实现,并且希望遵循以下中的 Java 实现我尽可能接近这个案例。 该代码涉
我正在尝试将 32 个字符长的十六进制字符串(例如:A41EB86E184207262C12F66E7C480577)转换为二进制。我正在使用: echo "ibase=16; obase=2; $l
我正在尝试编写一个 bash 脚本,我需要做一些 float 学运算。基本上我想做这样的事情: NUM=$(echo "scale=25;$1/10" | bc) if [ $? -ne 0 ] th
这是我的 netstat 命令的输出。我想计算第一个字段的总数,例如 7+8+1+1+1+1+3+1+2..so on... 我如何使用 bc 或任何其他方法命令来计算它们的总数? [root@exa
我希望以 6 十六进制值格式返回以下十六进制... [admin@X~]$ echo "obase=16; 16777215" | bc FFFFFF [admin@X~]$ echo "obase=
您好,我有一个脚本,用于计算从服务器返回的一组值的标准偏差。 我可以轻松检索命令并使用命令构建有效的字符串。 bc <<< "scale=10; sqrt((0+((782636-782030)^2)
我不明白为什么 bc 工具有时会忽略比例选项。 这是一个例子: > echo 'scale=2; 2.777 - 1.4744' | bc 1.3026 预期结果是: 1.30 附加信息: > bas
我正在尝试使用“bc”在 Bash 脚本中实现以下计算,但“scale”选项产生的结果不正确,末尾有 2 个额外的零,这意味着我必须手动修剪它(丑陋). 计算: ((2592000-239)÷2592
我正在使用 bc从 bash 脚本来做一些快速而肮脏的 BigInteger 数学运算,但是,当我提高比例时,它开始在我身上分割线: pax> echo 'scale=200 ; 1 / 4' | b
我想计算一个数字的对数(以 10 为底)。如何使用 bc 执行此操作? 最佳答案 使用 -l 选项调用 bc(以启用数学库),如下所示: $ echo 'l(100)/l(10)' | bc -l 2
我在 GitHub 上发现了术语“BC Break”——它是什么意思? 最佳答案 “BC 中断”通常意味着 backward compatibility笼统地说,但正如 David Schwartz
对于大型输出,unix 中的 bc 实用程序以这种格式提供输出: $ bc bc 1.06.95 Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006
我想显示例如ac年份为1999年12月31日,BC年份为2000年12月31日(-)。我花了一些时间研究 joda api,例如像这样: new DateTimeFormatterBuilder().
#! /bin/sh a1=260 a2=9150 echo "$a1 * 100 / $a2" | bc 输出是 2 它应该在哪里 2.8415 为什么我在使用 bc 时精度会丢失? 最佳答案 试试
我是一名优秀的程序员,十分优秀!