Tôi có tập lệnh python đơn giản nhận tên người dùng và mật khẩu làm đối số. Nhưng mật khẩu của tôi chứa hai chấm than marks.When tôi gọi kịch bản:Làm thế nào để vượt qua đối số với dấu chấm than trên linux?
[email protected]:~/Desktop/$ emailsender.py -u username -p pass!!
lệnh mà tôi nhập trước đó thay thế dấu chấm than
[email protected]:~/Desktop/$emailsender.py -u username -p "passemailsender.py -u username -p passwget wget http://www.crobot.com.hr/templog"
tôi có thể thoát khỏi dấu chấm than với dấu chéo ngược (\) nhưng thay đổi mật khẩu của tôi. Có giải pháp cho việc này hay không, làm cách nào tôi có thể thoát khỏi dấu chấm than mà không cần thay đổi mật khẩu?
Lệnh thứ hai không có ý nghĩa nhiều, anh đang cố gắng làm có ?? Đặc biệt là tên người dùng 'passemailsender.py -u -p passwget wget ...' phần – adamJLev
!! được thay thế bởi trình bao, nó được thay thế bằng lệnh được thực thi cuối cùng. Đây không phải là đặc trưng cho python. –
@Infinity - Bash diễn dịch "!!" như lệnh cuối cùng bạn đã nhập. Vì vậy, khi anh ta vào lệnh mà không cần thoát khỏi mật khẩu của mình bằng cách sử dụng dấu nháy đơn hoặc dấu gạch chéo ngược, bash sẽ chèn lệnh cuối cùng của anh ấy vào nơi "!!" là. –