Articles of terminal

如何从ac程序运行java程序?

我已经search了这个,但结果是10岁以上,并没有解释什么是JNI是否是唯一的方法,或结果是C + +或C#。 所以这是我的问题: 如何使用下面的代码作为例子从C程序运行Java程序? 我对下面的代码做了哪些具体的修改,让C程序成功调用带有参数的java程序? 在CentOSterminal中,当我在命令行input以下内容时,我能够成功运行一个java程序: java -cp . my.package.SomeClass 1 2 3 同样,从terminal中的同一个文件夹,我可以成功地运行一个C程序时,我在命令行中键入以下内容: ./hello hello.c的代码是: #include <stdio.h> main() { printf("Hello World from C!\n"); } 我如何修改hello.c的代码,以便它也运行带有参数1 2 3 my.package.SomeClass ? 例如,如何完成以下操作,但不会引发错误: #include <stdio.h> main() { printf("Hello World from C!\n"); java -cp . my.package.SomeClass 1 2 3 //What is the right syntax here? } 编辑 […]

在Java中通过terminal执行外部程序

我有一个外部程序Otter获取作为参数一些文件名,并创build一个输出文件,也被指定为参数。 所以,例如,如果我的input是“proof.in”,我想我的输出放在“proof.out”文件中,我在terminal中运行以下命令: otter <proof.in >proof.out “proof.in”文件必须与otter可执行文件在同一个文件中。 问题是我需要从Java的这个function,所以在我的Java代码中,我做了以下工作: java.lang.Runtime.getRuntime().exec("otter <proof.in >proof.out") 但在这一行之后,整个UI被冻结,没有任何反应,也没有生成输出文件。 任何人都可以告诉我,我错了吗? 在此先感谢,Tamash

如何使用'catdoc'显示utf-8编码的dock文件

我有很多docx文件,我想在terminal阅读。 我发现了catdoc http://www.wagner.pp.ru/~vitus/software/catdoc/ 当我使用它时,输出只是不可读的字符。 我的docx文件以utf-8编码。 我试过“catdoc -u my_file.docx”,但不起作用。 请帮忙。 非常感谢你。

从terminal运行java程序

我正在开发一个Java程序运行在树莓派,我不能让它运行使用terminal。 它由两个类组成,这两个类都位于: /home/pi/JBerries/Access control/bin/access/control 另外请注意,这是一个使用swing制作的GUI程序。 这是我用来尝试运行它的命令: pi@raspberrypi ~/JBerries/Access control $ java -classpath .bin.access.control.accessControlUI 这就是它吐出来的东西: Usage: java [-options] class [args…] (to execute a class) or java [-options] -jar jarfile [args…] (to execute a jar file) where options include: -d32 use a 32-bit data model if available -d64 use a 64-bit data model if available -client to […]

更改由xterm为键组合生成的转义序列

我的目标是build立一个terminal,其中一个命令行界面程序将按照键盘input的预期行事(该程序是最初为Windows编写的xharbour,但现在我想将它移植到linux)。 我select了xterm,因为它更简单,不需要禁用默认的terminal组合键。 用腻子大多数人物工作得很好,对于那些不使用autohotkey,一个ahk脚本,并做这项工作。 例如,对于Ctrl + F1: ^F1::SendInput ^[O5P 我尝试和修改,重新编译terminfo,改变它,并改变键盘types,但不能实现获得^ [O5P响应按Ctrl + F1在terminal。 如果你知道这样做的任何方式,请告诉我…我已经读了几百页,据说这样做,但所有这些变化没有任何影响或没有预期的效果。 所以我试图修改terminal设置来实现我的Ctrl + F1到^ [O5P的目标,并尝试了一些类似于autohotkey的命令和程序: xmodmap ,但对于键组合,它不工作 xdotool windowactivate xyztypes^ [O5P,这将返回单个字符的char代码 xmacro ,它不会将按键发送到其他窗口 ironahk ,我一开始就遇到了一个错误,试图运行example.ahk,在光手册中找不到我希望的命令。 bind '\e[1;5P":"\e[O5P"' ,这里第一个键码就是我当前inputctrl + f1时所得到的结果,并且是我希望通过这个组合得到的结果。 xbindkeys + xvkbd ,也没有帮助。 如果您已经知道,请帮助我,以某种方式进行pipe理(更改为组合键返回的关键代码)。 我使用最新的CentOS和Ubuntu进行testing。

将std :: cerr写入txt文件

我已经添加了一些方法到现有的项目。 它正确地写入一个txt文件。 不过,我只能看到我最近添加的std :: cerr文本,我执行我的项目 ./faceDemo > run.txt 有什么可能的原因?

使terminalinput发送一定数量的字符后

我正在用C创build一个Linuxterminal程序。 我试图做一个两位数的代码地址数组的位置。 我不想在每两位input一次后进入回车,我希望在input字符后直接通过scanf将input发送到我的缓冲区variables。 我没有代码示例,因为我不知道如何处理这个问题。 谢谢你的帮助!

在linuxterminalgcc中编程编译c代码

我在Linux上写文本到文件中的ac程序。 我遇到了麻烦,我试图使用system("gcc fileName.c")编译我创build到可执行文件的新文档。 该文件正在获得以下input: char Msg[100] = {"#include <stdio.h>\nint main();\n\nint main()\n{\n\n\treturn 0;\n}"}; 显然它有一个main()函数,但它仍然给我以下的错误墙: /usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 0 has invalid symbol index 11 /usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 1 has invalid symbol index 12 /usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 2 has invalid symbol index 2 /usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 3 has invalid symbol index 2 /usr/bin/ld: /usr/lib/debug/usr/lib/i386-linux-gnu/crt1.o(.debug_info): relocation 4 has invalid […]

Git – 如何从结帐自动完成中删除分支

我已经通过git branch -d branchname删除了一些本地分支,但是它们仍然存在于自动完成(当我把git checkout ,然后按tab键,我看到列表中的所有删除分支)。 我试图让git gc和git prune ,但没有任何变化。

如何在控制台应用程序中创build命令历史?

我想做交互式控制台应用程序,它允许在循环中input命令。 例如,用户键入“search”,程序find一些数据并将其打印在屏幕上。 然后程序等待下一个命令(可以是search,退出或其他)。 为了方便用户,我希望我的程序支持命令历史logging(如在terminal中,当按下键盘上的上下箭头时)。 但我不知道如何做到这一点,因为我不知道如何打印可以通过scanf,std :: getline,std :: cin等进一步阅读的文本。 所以编码std::cin << "hello"; 没有被编译(不匹配'std :: cin <<“hello”')中的'operator <<')。 函数fprintf(stdin, "hello"); 什么都不打印,scanf不能读这个打印的信息。 很明显, std::getline(std::cin, str); 和scanf("%s", s); 并gets(s)等无法读取由printf或std::out输出的文本。 所以问题是:我怎样才能在控制台上打印文本,也将在stdin ( std::cin )? 或者也许有更优雅的方式来组织命令历史? PS我也想过模拟按键来打印我需要的文字,但是我希望有更好的方法来制作指令历史 PPS我使用Linux和C ++