我要执行此命令Process.run ls /dev/tty.*
在我的Mac上,它返回:/dev/tty.Bluetooth-Incoming-Port /dev/tty.Bluetooth-Modem
但是当我通过Process.run执行时
Process.run('ls', ['/dev/tty.*']).then((ProcessResult results) {
print(results.stdout);
});
什么都不打印。
经过一些测试后,看起来使用星号是我问题的原因。的确,当我只列出/ dev
Process.run('ls', ['/dev/']).then((ProcessResult results) {
print(results.stdout);
});
打印所有文件和目录 使用asterik列出文件时有什么特别的事吗?
答案 0 :(得分:2)
通配符由shell解释。
尝试
Process.run('/bin/sh', ['-c', 'ls /dev/tty.*']).then((ProcessResult results) {
print(results.stdout);
});