我有一个脚本从stdin读取一行,并根据行的内容执行一些操作.我需要将一个键绑定到该脚本,这样只需键入Ctrl-t就可以调用它.当我按名称调用脚本时,它按预期工作,但是当我按下键绑定时,它会挂起.实际上shell挂了,我必须杀了它.该脚本使用read -r line.我试着cat用同样的结果.
脚本看起来像这样(文件名read.sh):
#!/bin/bash
echo -n ' > '
read -r buf
echo "you typed $buf"
Run Code Online (Sandbox Code Playgroud)
像这样绑定:
bind -x '"\C-t" : "read.sh"'
Run Code Online (Sandbox Code Playgroud) 我需要访问一个缓冲区中的对象,由void指针指向.该对象位于某个偏移量,但由于禁止对void指针进行算术运算,因此如何访问该对象?
我正在编写一个必须从文件中获取值的程序.在文件中,每一行表示一个实体.每个实体都有三个值.例如:
Value1 Value2 value3
我有一个正常的表达来匹配他们
m/(.*?) (.*?) (.*?)/m;
Run Code Online (Sandbox Code Playgroud)
但似乎第三个价值从未匹配过!匹配第三个值的唯一方法是在文件中添加另一个值,并在表达式中添加另一个"匹配括号".但这并不能让我满意.
我想复制C(Windows)中包含空值的字符串.我需要一个函数,我将传递缓冲区长度,以便NULL字符将毫无意义.我找到了StringCbCopy函数但它仍然在第一个NULL字符处停止.