Có cách nào để bash vào một loại chế độ tiết ở đâu, như vậy, khi nó chạy một kịch bản lệnh shell, nó lặp lại lệnh mà nó sẽ chạy trước khi chạy nó? Nghĩa là, để có thể thấy các lệnh được chạy (cũng như đầu ra của chúng), tương tự như đầu ra của make
?Lệnh Echo, sau đó chạy nó? (Giống như make)
Nghĩa là, nếu chạy một kịch bản shell như
echo "Hello, World"
Tôi muốn đầu ra sau đây
echo "Hello, World"
Hello, World
Ngoài ra, là nó có thể viết một hàm bash gọi echo_and_run
rằng sẽ ra một lệnh và sau đó chạy nó?
$ echo_and_run echo "Hello, World"
echo "Hello, World"
Hello, World
+1 và cũng có thể, nếu nó không rõ ràng, 'thiết -x' cũng có thể đi trong vỏ tập lệnh và sẽ kéo dài thời lượng của tập lệnh. – jedwards
Điều này dường như là cách tiếp cận tốt nhất, đáng tin cậy nhất. (Và cũng làm việc với chuyển hướng, mà tôi đã chuẩn bị để không lo lắng về, mặc dù nó là tốt đẹp để có.) Vấn đề duy nhất là 'set + x' lệnh xuất hiện trong đầu ra cũng ... Cũng phát hiện ra điều này: [Tôi muốn một nhật ký các hành động của tập lệnh của tôi] (http://mywiki.wooledge.org/BashFAQ/050). – mjs
@mjs: Nếu bạn muốn lệnh echo-ing cho toàn bộ thời gian chạy của tập lệnh, bạn có thể chạy nó thông qua 'bash -x' (cho phép' đặt -x' hoàn toàn và không xuất nó). –