Tôi đang gặp sự cố khi thoát các cuộc gọi đến trình bao từ bên trong Python, bằng cách sử dụng lệnh os.system. Tôi đang cố gắng thực hiện tương đương:xử lý đúng cách thoát vỏ từ Python bằng os.system
$ cat test | sort --stable -t $'\t' -k1,1
từ bên trong Python, chuyển cho vỏ.
tôi đã cố gắng:
import os
cmd = "cat %s | sort --stable -t $'\\t' -k1,1" %("test")
os.system(cmd)
nhưng tôi nhận được lỗi:
sort: multi-character tab `$\\t'
mặc dù nó hoạt động một cách chính xác từ vỏ. Tôi đã cố gắng để thoát khỏi \t
bằng cách thêm một dấu gạch chéo thêm trong Python, nhưng tôi phải thiếu cái gì khác. Bất kỳ ý tưởng làm thế nào điều này có thể được cố định?
cảm ơn.
bạn có thể chuyển tên tệp thành arg để sắp xếp và bỏ qua tệp 'cat '| Chúc may mắn. – shellter