2010-06-21 6 views
1

무선 USB 장치를 통해 Linux 셸을 제어하는 ​​다른 사람의 [c] 코드를 사용하려고합니다. 통신 할 현재 디렉토리에 "IReadFromBash"및 "IWriteToBash"파일이 있습니다. 메모가 없지만이를 촉진하기 위해 이미 특수 파일이 존재하고 그 파일이없는 파일이있을 것으로 예상됩니다. 쉘에 연결되는 명명 된 입출력 파일을 작성하는 확실한 방법이 있습니까?BASH 셸과 대화하는 특수 파일을 만드는 방법

+0

쉘 충돌을합니까 : 다른 터미널에서

다음
pax> mknod infile p pax> mknod outfile p pax> bash <infile >outfile 

? 또 다른 프로그램 충돌? 인터페이스 프로그램이 충돌합니까? 처음 작성된 프로그램은 무엇입니까? –

+0

열려는 파일이 없기 때문에 인터페이스 프로그램이 충돌합니다. C로 쓰여졌 고, 그 이름으로 정규 파일을 만들면 충돌이 일어나지 않습니다. 물론 일반 파일은 실제로 bash 쉘로 파이프되지 않습니다 ... – phip

+0

소스가 있습니까? 그 두 특수 파일의 unexistance처럼 너무 작은 세부 사항에 대한 충돌 경우 고정해야합니다 – ShinTakezou

답변

2

내 생각에 실제로는 추측되지만 그들은 mknod으로 만든 파이프라는 이름으로 의심됩니다. 그것은 저에게 바라는 목표를 달성하는 가장 좋은 방법입니다.

여기에서 작동하는 것을 볼 수 있습니다. 터미널 세션에서 :

pax> echo ls >infile 
pax> cat outfile | sed 's/^/ /' 
    backup0.sh 
    backup1.sh 
    Desktop 
    Downloads 
    infile 
    Music 
    outfile 
    Pax 
    Pictures 
    Public 
    super_sekrit_porn 
    Templates 
    Videos 
    workspace 
pax> _ 
+0

아 - 하! 고맙습니다! – phip

관련 문제