Чтобы объяснить, почему cksum {${Z//\ /,}}
не работает так, как вы ожидали:
cksum {file1,file4}
Когда вы вводите eval
в микс,вы явно просите оболочку еще раз просмотреть список расширений. Теперь мы можем получить расширение скобок для команды cksum {file1,file4}
, и вы получите контрольные суммы для этих двух файлов.
Функция subprocess.call возвращает объект returncode , который является int . Это будет значение кода выхода подпроцесса.
>>> foo = subprocess.call(['/usr/bin/true'])
>>> foo
0
>>> foo = subprocess.call(['/usr/bin/false'])
>>> foo
1