วิธีหนึ่งจะใช้ตัวเลือกแห้งรันในสคริปต์ทุบตี?
ฉันสามารถคิดถึงการห่อคำสั่งทุกคำสั่งในคำสั่ง if และ echoing คำสั่งแทนที่จะเรียกใช้ถ้าสคริปต์รันด้วยการรันแบบแห้ง
อีกวิธีหนึ่งคือการกำหนดฟังก์ชั่นแล้วส่งการเรียกแต่ละคำสั่งผ่านฟังก์ชันนั้น
สิ่งที่ต้องการ:
function _run () {
if [[ "$DRY_RUN" ]]; then
echo $@
else
$@
fi
}
`_run mv /tmp/file /tmp/file2`
`DRY_RUN=true _run mv /tmp/file /tmp/file2`
นี่เป็นสิ่งที่ผิดและมีวิธีที่ดีกว่าในการทำเช่นนี้?
ใช่แล้ว ฉันสงสัยว่าถ้าไม่มีตัวแปรภายในคุณสามารถตั้งค่าเป็น bash ได้ดังนั้นคำสั่งจะไม่ทำงานจริง ๆ แทนที่จะส่งผ่านฟังก์ชั่น
—
Andrei Serdeliuc
ไม่มีเหตุผลที่คำถามนี้ควรถูกทำเครื่องหมายว่าเป็นชุมชน wiki
—
หยุดชั่วคราวจนกว่าจะมีการแจ้งให้ทราบต่อไป
Bash เป็นเปลือก ไม่มีเหตุผลที่จะทำแห้ง ฉันไม่คิดว่าจะมีวิธีที่ดีกว่าในการทำมากกว่าที่คุณทำไปแล้ว
—
d -_- b
_run()
ฟังก์ชั่นของคุณบางครั้งด้วย 'set -xv' แต่ฉันชอบวิธีที่ดีกว่า