Bonjour,

j'ai envie de programmer un code permettant d’exécuter la commande du shell "ls -al | more", bon je pars de l'idée de crée un tube(et de faire un fork) le père doit mettre dans le tube la commande ls -al et le fils exécute more, mais çà ne marche pas , merci de m'aider.

code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import os,sys
 
(o,i)=os.pipe()
pid=os.fork()
 
if pid==0:
	buf2=os.read(o,1024)
	os.dup(i)
	os.system("more")
	sys.exit(0)
else:	
	c="ls -al"
	os.write(i,c)
	os.wait()
	sys.exit(1)