Điểm:0

Chạy các lệnh chạy trong trình bao dưới dạng tập lệnh

lá cờ in

Chạy các lệnh sau trong trình bao sẽ chạy mà không gặp sự cố:

ssh user@machine systemctl status my-service.service
ssh user@machine Sudo systemctl stop my-service.service
scp -r ./my-service/* user@machine:/home/user/my-service
ssh user@machine chmod +x /home/user/my-service/my-service
ssh user@machine Sudo systemctl start my-service.service
ssh user@machine Sudo systemctl status my-service.service

Tuy nhiên, đặt điều này trong một triển khai.sh tập tin dẫn đến không có điều nào ở trên có thể thực thi.

Lỗi:

  • Tên đơn vị không hợp lệ "my-service" đã thoát thành "my-service\x0d" (có lẽ bạn nên sử dụng systemd-escape?)
  • Không thể tìm thấy đơn vị my-service\x0d.service.
  • Tên đơn vị không hợp lệ "my-service.service" đã được thoát thành "my-service.service\x0d" (có lẽ bạn nên sử dụng systemd-escape?)
  • Không thể dừng my-service\x0d.service: Đơn vị my-service.service\x0d.service không được tải. : Không có tệp hoặc thư mụcnlock/
  • chmod: không thể truy cập '/home/user/my-service/my-service'$'\r': Không có tệp hoặc thư mục như vậy
  • Tên đơn vị không hợp lệ "my-service.service" đã được thoát thành "my-service.service\x0d" (có lẽ bạn nên sử dụng systemd-escape?)
  • Không khởi động được my-service.service\x0d.service: Không tìm thấy đơn vị my-service.service\x0d.service. Tên đơn vị không hợp lệ "my-service.service" đã được thoát thành "my-service.service\x0d" (có lẽ bạn nên sử dụng systemd-escape?)
  • Không thể tìm thấy đơn vị my-service.service\x0d.service.

Một số đã bị phá vỡ. Có vẻ như một cái gì đó liên quan đến việc trốn thoát. Vì một số lý do, việc thêm một khoảng trắng ở cuối dòng làm cho nó hoạt động tốt nhưng vẫn không có lỗi.

Google về các lỗi hiển thị một số lượt truy cập về việc sử dụng -- và thêm nó cùng với dấu cách làm cho một số lệnh hoạt động nhưng vẫn đưa ra lỗi thoát.

Điểm:2
lá cờ cn

Tôi sẽ đặt đô la cho bánh rán mà bạn đã chỉnh sửa tệp này trên hoặc từ một các cửa sổ máy móc.

Linux sử dụng \x0a (mã ASCII 10) để phân tách các dòng trong một tệp (hoặc tập lệnh).
Windows sử dụng tổ hợp \x0d ("Carriage_Return", mã ASCII 13) và \x0a ("Line Feed", ASCII 10) để thực hiện như nhau Công việc.

Cung cấp tệp do Windows chỉnh sửa cho máy Linux và nó sẽ thấy từng dòng như có \x0d không liên quan ở cuối.

Nhận cho mình một tử tế Trình chỉnh sửa Windows (NotePad++ miễn phí và rất được khuyến khích sử dụng) hoặc tìm hiểu cách sử dụng vi. Chắc chắn, nó có đường cong học tập riêng, nhưng một số khả năng của nó có thể làm bạn ngạc nhiên!

lá cờ in
Tôi cảm thấy thật ngu ngốc :-) Đây là nó, tôi đã chỉnh sửa tệp trong vscode. Đã thay đổi từ CRLF thành LF ở phía dưới bên phải, đã lưu nó và nó chạy không có vấn đề gì.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.