Tag: unix

如何在awk / sed中多次出现两个标记模式之间select行

使用awk或sed我怎样才能select两个不同的标记模式之间发生的线? 可能有多个部分标有这些模式。 例如:假设文件包含: abc def1 ghi1 jkl1 mno abc def2 ghi2 jkl2 mno pqr stu 而起始模式是abc和结束模式是mno所以,我需要的输出为: def1 ghi1 jkl1 def2 ghi2 jkl2 我使用sed来匹配一次模式: sed -e '1,/abc/d' -e '/mno/,$d' <FILE> 在sed或awk有什么方法可以重复执行,直到文件结束?

如何使用pipe道在两个程序之间发送一个简单的string?

我试图在网上search,但几乎没有任何资源。 一个小例子就足够了。 编辑我的意思是说,两个不同的C程序相互沟通。 一个程序应该发送“嗨”,另一个应该收到它。 就是这样

典型与非典型terminalinput

我正在学习考试,我对Unix中的规范input/输出(例如curses)如何工作感到困惑。 我知道有一个缓冲“线条”适用于规范input。 这是否意味着缓冲区被非规范input绕过,还是仅仅意味着没有行规则被应用? input和输出操作的过程如何? 在我使用过的示范规范input的curses程序中,在input了一定数量的字符或者经过了一定的时间之后,用户input的input会自动input。 这些事情中的任何一个被认为是“线路规程”,还是完全是其他的东西呢?

如何将DOS / Windows换行符(CRLF)转换为Unix换行符(\ n)在Bash脚本中?

我怎样才能以编程方式(即不使用vi )将DOS / Windows换行符转换成Unix? dos2unix和unix2dos命令在某些系统上不可用。 我如何用sed / awk / tr等命令来模拟这些命令?

父母退出后如何让孩subprocess死亡?

假设我有一个产生一个subprocess的进程。 现在,当父进程出于任何原因(通常或exception,通过kill,^ C,声明失败或其他),父进程退出,我希望subprocess死亡。 如何正确地做到这一点? 一些类似的问题在stackoverflow: (之前问过) 当父进程执行时,如何导致subprocess退出? (稍后问) 是否使用fork()创build的subprocess在父进程被终止时自动终止? Windows上的一些类似的问题在stackoverflow: 如何在Windows中自动销毁subprocess? 当父进程被终止时,终止subprocess

awk保存修改到位

我正在学习awk ,我想知道是否有一个选项来修改文件,类似于sed我将使用-i选项来保存对文件的修改。 我明白我可以使用redirect来写入更改。 但是有没有在awk的选项做到这一点?

如何在Linux / Unix上永久设置$ PATH?

我试图添加一个目录到我的path,所以它将始终在我的Linuxpath。 我试过了: export PATH=$PATH:/path/to/dir 这是有效的,但是每次我退出terminal并启动一个新的terminal实例,这个path都会丢失,我需要再次运行export命令。 我该怎么做,这将永久设置?

在时间(1)的输出中,“真实”,“用户”和“系统”是什么意思?

$ time foo real 0m0.003s user 0m0.000s sys 0m0.004s $ 在时间输出中,“真实”,“用户”和“系统”是什么意思? 在testing我的应用时,哪一个是有意义的?

如何select两种模式之间的线?

我有一个像下面的文件,我想打印两个给定的模式PAT1和PAT2之间的线。 1 2 PAT1 3 – first block 4 PAT2 5 6 PAT1 7 – second block PAT2 8 9 PAT1 10 – third block 我已经阅读了如何selectawk / sed中可能出现多次的两个标记模式之间的行,但我很好奇看到所有可能的组合,无论是否打印模式。 我怎样才能select两种模式之间的线?

如何从Java代码运行Unix shell脚本?

从Java运行Unix命令非常简单。 Runtime.getRuntime().exec(myCommand); 但是是否可以从Java代码运行Unix shell脚本? 如果是的话,从Java代码中运行一个shell脚本是不是一个好习惯?