คำถามติดแท็ก shebang

5
Bash shebang ที่ต้องการคืออะไร
ถ้าเป็นเช่นนี้แล้วStack Overflow คุณจะได้รับคำตอบที่ถูกต้อง : Вчёмсмыслипреимущества #! / usr / bin / env? มีBashshebang ใดที่มีความหมายดีกว่าคนอื่น ๆ สำหรับการใช้งานส่วนใหญ่หรือไม่? #!/usr/bin/env bash #!/bin/bash #!/bin/sh #!/bin/sh - ฯลฯ ฉันจำได้ไม่นานเมื่อได้ยินว่าการเพิ่มเครื่องหมายขีดคั่นไปยังจุดสิ้นสุดทำให้บางคนส่งคำสั่งไปที่สคริปต์ของคุณ แต่ไม่พบรายละเอียดใด ๆ
1131 bash  shebang 


12
ฉันควรใส่ #! (shebang) ในสคริปต์ Python และควรใช้รูปแบบใด
ฉันควรใส่ shebang ในสคริปต์ Python ของฉันหรือไม่ ในรูปแบบใด #!/usr/bin/env python หรือ #!/usr/local/bin/python เหล่านี้พกพาได้อย่างเท่าเทียมกัน? รูปแบบใดที่ใช้มากที่สุด หมายเหตุ:ทอร์นาโดโครงการใช้ shebang ในทางตรงกันข้ามโครงการ Djangoก็ทำไม่ได้

9
ทำไมคุณต้องใส่ #! / bin / bash ที่จุดเริ่มต้นของไฟล์สคริปต์
ฉันเคยสร้างสคริปต์Bashมาก่อนและพวกเขาก็ทำงานได้ดีโดยไม่ต้อง#!/bin/bashเริ่มต้น จุดประสงค์ของการวางไว้คืออะไร? สิ่งต่าง ๆ จะแตกต่างกันอย่างไร นอกจากนี้คุณออกเสียง#อย่างไร ฉันรู้ว่า!มันออกเสียงว่า "ปัง" #!เด่นชัดเป็นอย่างไร
486 linux  bash  scripting  shebang 

5
อะไรคือความแตกต่างระหว่าง“ #! / usr / bin / env bash” และ“ #! / usr / bin / bash”
ในส่วนหัวของสคริปต์ Bash ความแตกต่างระหว่างสองข้อความเหล่านี้คืออะไร: #!/usr/bin/env bash #!/usr/bin/bash เมื่อฉันปรึกษาenv หน้า manฉันได้คำจำกัดความนี้: env - run a program in a modified environment มันหมายความว่าอะไร?
372 linux  bash  shell  unix  shebang 

6
ทำไม #! / usr / bin / env ทุบตีดีกว่า #! / bin / bash?
ผมเคยเห็นในหลายสถานที่รวมถึงคำแนะนำในเว็บไซต์นี้ ( อะไรคือสิ่งที่ต้องการ shebang ทุบตี? ) เพื่อใช้ในการตั้งค่า#!/usr/bin/env bash #!/bin/bashผมเคยเห็นแม้กระทั่งบุคคลกล้าได้กล้าเสียหนึ่งแนะนำให้ใช้#!/bin/bashเป็นที่ไม่ถูกต้องและการทำงานทุบตีจะหายไปโดยการทำเช่นนั้น จากทั้งหมดที่กล่าวมาฉันใช้ bash ในสภาพแวดล้อมการทดสอบที่ควบคุมอย่างเข้มงวดโดยที่ไดรฟ์ทุกตัวในการหมุนเวียนนั้นเป็นโคลนของไดรฟ์หลักเพียงตัวเดียว ฉันเข้าใจข้อโต้แย้งการพกพาแม้ว่าจะไม่จำเป็นต้องใช้ในกรณีของฉัน มีเหตุผลอื่นอีกหรือไม่ที่จะ#!/usr/bin/env bashเลือกทางเลือกอื่น ๆ และหากการพกพานั้นเป็นเรื่องที่น่ากังวล
212 bash  shebang 

5
บรรทัด“ #! / bin / sh” หมายถึงอะไรในเชลล์สคริปต์ UNIX
ฉันกำลังทำแบบฝึกหัดเชลล์สคริปต์และพบโปรแกรมตัวอย่างต่อไปนี้: #!/bin/sh clear echo "HELLO WORLD" ทุกคนได้โปรดบอกฉันว่าความสำคัญของความคิดเห็น#!/bin/shในตอนเริ่มต้นคืออะไร?
142 shell  unix  sh  shebang 

10
วิธีใช้หลายอาร์กิวเมนต์สำหรับ awk กับ shebang (เช่น #!)
ฉันต้องการเรียกใช้สคริปต์gawk--re-intervalโดยใช้ shebang แนวทาง "ไร้เดียงสา" ของ #!/usr/bin/gawk --re-interval -f ... awk script goes here ใช้งานไม่ได้เนื่องจาก gawk ถูกเรียกด้วยอาร์กิวเมนต์แรก"--re-interval -f"(ไม่ถูกแยกออกจากช่องว่าง) ซึ่งไม่เข้าใจ มีวิธีแก้ปัญหาสำหรับสิ่งนั้นหรือไม่? แน่นอนคุณไม่สามารถเรียก gawk ได้โดยตรง แต่รวมไว้ในเชลล์สคริปต์ที่แยกอาร์กิวเมนต์แรกหรือสร้างเชลล์สคริปต์ที่เรียกว่า gawk และใส่สคริปต์ลงในไฟล์อื่น แต่ฉันสงสัยว่ามีวิธีทำหรือไม่ นี้ภายในไฟล์เดียว ลักษณะการทำงานของเส้น Shebang แตกต่างกันไปในแต่ละระบบ - อย่างน้อยในCygwinจะไม่แบ่งอาร์กิวเมนต์ด้วยช่องว่าง ฉันแค่สนใจว่าจะทำอย่างไรกับระบบที่มีพฤติกรรมเช่นนั้น สคริปต์ไม่ได้มีไว้สำหรับพกพา
118 shell  unix  awk  gawk  shebang 

3
โหนด“ / usr / bin / env” ทำหน้าที่อะไรที่จุดเริ่มต้นของไฟล์โหนด
ฉันเคยเห็นบรรทัดนี้#!/usr/bin/env nodeในตอนต้นของตัวอย่างบางส่วนnodejsและฉัน googled โดยไม่พบหัวข้อใดที่สามารถตอบเหตุผลของบรรทัดนั้นได้ ลักษณะของคำทำให้การค้นหาไม่ใช่เรื่องง่าย ฉันอ่านบางส่วนjavascriptและnodejsหนังสือเมื่อเร็ว ๆ นี้และฉันจำไม่ได้เห็นมันในใด ๆ ของพวกเขา หากคุณต้องการตัวอย่างคุณสามารถดูบทช่วยสอนRabbitMQอย่างเป็นทางการซึ่งมีอยู่ในตัวอย่างเกือบทั้งหมดนี่คือหนึ่งในนั้น: #!/usr/bin/env node var amqp = require('amqplib/callback_api'); amqp.connect('amqp://localhost', function(err, conn) { conn.createChannel(function(err, ch) { var ex = 'logs'; var msg = process.argv.slice(2).join(' ') || 'Hello World!'; ch.assertExchange(ex, 'fanout', {durable: false}); ch.publish(ex, '', new Buffer(msg)); console.log(" [x] Sent %s", msg); }); …
113 node.js  shebang 

1
แฮชบังที่เหมาะสมสำหรับสคริปต์ Node.js
ฉันกำลังพยายามสร้างสคริปต์สำหรับ node.js ที่จะทำงานในหลายสภาพแวดล้อม โดยเฉพาะอย่างยิ่งสำหรับฉันฉันกำลังสลับไปมาระหว่าง OS X และ Ubuntu ในอดีตโหนดติดตั้งเป็นแต่ในระยะหลังมันเป็นnode nodejsที่ด้านบนของสคริปต์ฉันสามารถมี: #!/usr/bin/env node หรือ #!/usr/bin/env nodejs ฉันต้องการให้สคริปต์ทำงานเป็นไฟล์ปฏิบัติการสำหรับสภาพแวดล้อมใด ๆ ตราบเท่าที่มีการติดตั้งโหนดแทนที่จะมีอย่างใดอย่างหนึ่งต้องระบุคำสั่ง ( ./script-name.jsเทียบกับnode script-name.js) มีวิธีใดในการระบุ hashbang สำรองหรืออันที่เข้ากันได้ในทั้งสองกรณีสำหรับ node.js?
95 node.js  shell  shebang 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.