我在bash脚本中有一个简单的函数,我想将stdout作为输入传递给它.
jc_hms(){
printf "$1"
}
Run Code Online (Sandbox Code Playgroud)
我想以这种方式使用它.
var=`echo "teststring" | jc_hms`
Run Code Online (Sandbox Code Playgroud)
当然我使用冗余函数echo和printf来简化问题,但是你明白了.现在我得到一个"未找到"错误,我认为这意味着我的参数分隔错误("$ 1"部分).有什么建议?
最初jc_hms函数的使用方式如下:
echo `jc_hms "teststring"` > //dev/tts/0
Run Code Online (Sandbox Code Playgroud)
但是我想先将结果存储在一个变量中,然后再将其发送到串口.
编辑:所以澄清一下,我不是想把东西打印到串口,我想接口我的bash函数应该是"|" 管道人物,我想知道这是否可行.
编辑:好的,这是完整的功能.
jc_hms(){
hr=$(($1 / 3600))
min=$(($1 / 60))
sec=$(($1 % 60))
printf "$hs:%02d:%02d" $min $sec
}
Run Code Online (Sandbox Code Playgroud)
我正在使用该函数来形成一行代码
songplaytime=`echo $songtime | awk '{print S1 }'`
printstring="`jc_hms $songplaytime`" #store resulting string in printstring
Run Code Online (Sandbox Code Playgroud)
其中$ songtime是一个以空格分隔的"playtime totaltime"表示的字符串.
我希望我可以在一行中执行此操作,并在awk之后将其管道化
printstring=`echo $songtime | awk '{print S1 }' | jc_hms`
Run Code Online (Sandbox Code Playgroud)
像这样.
我需要创建一个更改QWidget背景的菜单.我想将一个代表所选颜色的QIcon放入填充QMenu的QActions中.我不想弹出Photoshop并手动绘制图标.是否可以编写一个充满特定颜色的简单图标?这样我可以根据需要进行任意数量的QActions,而且我不需要在Photoshop中制作一大堆图标.\
我想通过串口发送文件的文本内容,通过PuTTY.我知道扩展存在,例如Xmodem和Zmodem,但它们都使用一些校验和协议来确认文件是通过端口发送的.
但是,我的要求更简单.我想简单地通过Windows中的串口发送一堆文本(在文件中)(在Linux下这将是更简单的),但我首选的终端程序是PuTTY.这可能吗?是否有其他终端程序具有此类功能?
int (*rdPtrList[4])(unsigned int addr, unsigned int data);
Run Code Online (Sandbox Code Playgroud)
上面声明了一个返回int的函数指针大小为4的数组,并带有两个unsigned int.我想做一个指向这个数组的指针.这可能在C?
我想#define在报价单中指令.这是问题所在:
我正在使用的嵌入式平台中有一个内置函数,它将文字汇编代码作为字符串.我想把它包装成一个宏.
__asm__("goto 0x2400");
Run Code Online (Sandbox Code Playgroud)
上面的内置函数处理器跳转到位置0x2400处的代码并开始在该地址执行(对于那些想知道的人,我正在编写一个引导加载程序,这就是为什么这是必要的).因为地址在字符串中,所以我不能轻易替换它.我需要一种方法使函数通用,以便我可以开始在任何地址执行代码.例如:
#define ASM_GOTO __asm__("goto X")
Run Code Online (Sandbox Code Playgroud)
这不会导致正确的文本替换,因为X在引号中.有没有解决的办法?
我想做以下几点,但我似乎无法找到一种优雅的方式来做到这一点.
我有一个看起来像这样的文本文件:
..more values
stuff = 23
volume = -15
autostart = 12
more values..
Run Code Online (Sandbox Code Playgroud)
现在,"音量"值可能会根据情况而改变.我需要一个脚本,可以找到带有"volume = xxx"的文本行,然后将其替换为"volume = 0"行.什么是优雅的解决方案?文本中的这一行不保证是第一行,所以我需要一种方法来首先找到它.
我想在 gcc 编译器编译时将宏的结果打印到文件中。我想知道这是否可能。下面的例子:
#define MD_BTLDB_APP_VERSION_OFFSET(x)
Run Code Online (Sandbox Code Playgroud)
扩展到
(0x00000000u + (0x00040000u - ((uint32)(x) * 0x00000100u) - (64u)))
Run Code Online (Sandbox Code Playgroud)
计算得出
0x0003ffd6
Run Code Online (Sandbox Code Playgroud)
为了
MD_BTLDB_APP_VERSION_OFFSET(0)
Run Code Online (Sandbox Code Playgroud)
这是引导加载程序的一些元数据的地址,我希望能够在运行时之外使用该地址。
我查看了 #pragma 消息,但这仅将值输出到 gcc 输出,而不是输出到文件。它还存在混入许多其他编译器消息的不便。欢迎任何提示或创造性的解决方案。
所以我正在研究一个需要计算浮点数的嵌入式项目.显然,有多种方法可以估算输出并减少计算周期.我的问题是,浮点数与整数比较(相对来说,不是精确的周期)有多贵?其中一个操作可能会以这种方式进行优化,但我想知道是否值得付出努力.芯片是皮质M0(没有浮点硬件).所有浮点都是通过软件完成的.
我创建了一个bash脚本,它在后台运行.它有一个存储在文件中的PID,我可以使用KILL将预定义的信号传递给进程.
但是,我有时会手动将信息传递给流程.优选地,我想要发生的是能够传递通过TRAP捕获的字符串或信息数组,然后bash文件中的永久循环将处理信息.有没有简单的方法将信息传递到后台进程?
谢谢
我想使用正则表达式来查看是否存在除某个集合之外的任何字符.
例如,我想在字符串中测试字母'p','v','c'.如果字符串中有任何其他字符,我希望测试返回True.如果只存在'p','v','c'或其组合,我希望测试返回False.
'v'返回False
'pv'返回False
'pvc'返回False
'pd'返回True
'p('返回True
'apvc'返回True
'xyz'返回True
我怎么用re来表达呢?谢谢.