Shell输入重定向

沭水河畔 2011-11-01 11:07:00
请教大家一个问题:程序从/dev/ttyS0读取特定格式命令,想从Shell将命令传递给/dev/ttyS0的输入。
我的想法是重定向Shell的输入,将Shell输入等效为对/dev/ttyS0的输入。那么Shell中该如何写?或者有没有更好的方式?
...全文
131 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
向良玉 2011-11-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 lishanchao 的回复:]

各位好!這個問題通過其它方式解決了。簡單介紹并補充:
假設程序A跑A命令,簡寫為A-cmd,同時A-cmd可以包裝Shell命令。
之前的動作包括兩部份,前部份是A-cmd包裝的Shell命令,后部份是A-cmd。現在的做法是將前部份移到rc.user中處理,后部份保持不變。
[/Quote]
不错,想法很好
沭水河畔 2011-11-02
  • 打赏
  • 举报
回复
各位好!這個問題通過其它方式解決了。簡單介紹并補充:
假設程序A跑A命令,簡寫為A-cmd,同時A-cmd可以包裝Shell命令。
之前的動作包括兩部份,前部份是A-cmd包裝的Shell命令,后部份是A-cmd。現在的做法是將前部份移到rc.user中處理,后部份保持不變。
qq120848369 2011-11-01
  • 打赏
  • 举报
回复
这个不好,shell一直阻塞在read上,你如果把shell的STDIN重定向到文件,那么shell会一直读光那些数据不会停下,shell重定向语法如下:

exec 0</dev/ttyS0

如果你只想给某个进程重定向,那么./main 0</dev/ttyS0

沭水河畔 2011-11-01
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 louyong0571 的回复:]

./main 0</dev/ttyS0 正解
不过既然是程序,还是在程序里面打开设备文件比较好吧
[/Quote]
请问楼上,对于/dev/ttyS0的open操作,是独占的么?
比如程序中C代码已经默认打开了/dev/ttyS0,那么可以再打开么?
louyong0571 2011-11-01
  • 打赏
  • 举报
回复
./main 0</dev/ttyS0 正解
不过既然是程序,还是在程序里面打开设备文件比较好吧
fangzhaoguo 2011-11-01
  • 打赏
  • 举报
回复
[Quote=引用楼主 lishanchao 的回复:]
请教大家一个问题:程序从/dev/ttyS0读取特定格式命令,想从Shell将命令传递给/dev/ttyS0的输入。
我的想法是重定向Shell的输入,将Shell输入等效为对/dev/ttyS0的输入。那么Shell中该如何写?或者有没有更好的方式?
[/Quote]

我想在做一个shell脚本
在su root后面直接从文件读入root的密码都不能成功
您这个……我更不会了

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧