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

คำว่า 'เชลล์' หมายถึงคลาสทั่วไปของล่ามคำสั่งแบบโต้ตอบตามข้อความซึ่งส่วนใหญ่มักเกี่ยวข้องกับระบบปฏิบัติการ Unix & Linux สำหรับคำถามเกี่ยวกับการเขียนสคริปต์เชลล์โปรดใช้แท็กเฉพาะเพิ่มเติมเช่น 'bash', 'powershell' หรือ 'ksh' หากไม่มีแท็กเฉพาะควรใช้วิธีแก้ปัญหาแบบพกพา (POSIX-compliant) แม้ว่าจะใช้ 'posix' เพิ่มเติมหรือ 'sh' แทนก็ตาม

17
จะค้นหาการเข้ารหัสไฟล์ผ่านสคริปต์บน Linux ได้อย่างไร
ฉันต้องการค้นหาการเข้ารหัสของไฟล์ทั้งหมดที่อยู่ในไดเรกทอรี มีวิธีหาการเข้ารหัสที่ใช้หรือไม่ fileคำสั่งจะไม่สามารถที่จะทำเช่นนี้ การเข้ารหัสที่ฉันสนใจคือ: ISO-8859-1 หากการเข้ารหัสเป็นอย่างอื่นฉันต้องการย้ายไฟล์ไปยังไดเรกทอรีอื่น
303 file  shell  unix  encoding 

16
ทดสอบว่าพอร์ต TCP ระยะไกลเปิดจากเชลล์สคริปต์หรือไม่
ฉันกำลังมองหาวิธีที่รวดเร็วและง่าย ๆ ในการทดสอบว่าพอร์ต TCP ที่กำหนดนั้นเปิดอยู่บนเซิร์ฟเวอร์ระยะไกลหรือไม่จากสคริปต์ Shell ฉันจัดการที่จะทำมันด้วยคำสั่ง telnet และมันทำงานได้ดีเมื่อพอร์ตถูกเปิด แต่ดูเหมือนจะไม่หมดเวลาเมื่อมันไม่ได้และเพิ่งแฮงค์ที่นั่น ... นี่คือตัวอย่าง: l_TELNET=`echo "quit" | telnet $SERVER $PORT | grep "Escape character is"` if [ "$?" -ne 0 ]; then echo "Connection to $SERVER on port $PORT failed" exit 1 else echo "Connection to $SERVER on port $PORT succeeded" exit …
297 shell  tcp  port  solaris  telnet 

7
ฉันจะระงับเอาต์พุตทั้งหมดจากคำสั่งโดยใช้ Bash ได้อย่างไร
ฉันมีสคริปต์ Bash ที่รันโปรแกรมด้วยพารามิเตอร์ โปรแกรมนั้นแสดงสถานะบางสถานะ ไม่มีตัวเลือกใด ๆ สำหรับโปรแกรมนี้ที่จะเงียบ ฉันจะป้องกันไม่ให้สคริปต์แสดงสิ่งใดได้อย่างไร ฉันกำลังมองหาบางสิ่งบางอย่างเช่น Windows' 'สะท้อนออก'
296 bash  shell  scripting  echo 

14
จะส่งรหัสผ่านไปยัง pg_dump ได้อย่างไร
ฉันกำลังพยายามสร้าง cronjob เพื่อสำรองฐานข้อมูลของฉันทุกคืนก่อนที่จะเกิดภัยพิบัติขึ้น ดูเหมือนว่าคำสั่งนี้จะตอบสนองความต้องการของฉัน: 0 3 * * * pg_dump dbname | gzip > ~/backup/db/$(date +%Y-%m-%d).psql.gz ยกเว้นหลังจากทำงานนั้นฉันคาดว่าจะพิมพ์รหัสผ่าน ฉันไม่สามารถทำได้ถ้าฉันเรียกใช้จาก cron ฉันจะส่งผ่านโดยอัตโนมัติได้อย่างไร

7
ฉันจะใช้ตัวแปรเชลล์ในสคริปต์ awk ได้อย่างไร
ผมพบว่าวิธีการที่จะผ่านตัวแปรเปลือกภายนอกไปยังawkสคริปต์ แต่ฉันสับสนเกี่ยวกับและ'" ก่อนอื่นฉันลองด้วย shell script: $ v=123test $ echo $v 123test $ echo "$v" 123test จากนั้นลอง awk: $ awk 'BEGIN{print "'$v'"}' $ 123test $ awk 'BEGIN{print '"$v"'}' $ 123 ทำไมถึงแตกต่าง สุดท้ายฉันก็ลองทำสิ่งนี้: $ awk 'BEGIN{print " '$v' "}' $ 123test $ awk 'BEGIN{print ' "$v" '}' awk: cmd. line:1: BEGIN{print awk: …
290 bash  shell  awk 


12
วิธีการส่งผ่านอาร์กิวเมนต์บรรทัดคำสั่งไปยังนามแฝงของเปลือก?
ฉันจะส่งผ่านอาร์กิวเมนต์บรรทัดคำสั่งไปยังนามแฝงได้อย่างไร นี่คือตัวอย่าง: alias mkcd = 'mkdir $ 1; cd $ 1; ' แต่ในกรณีนี้ $ xx กำลังได้รับการแปล ณ เวลาที่สร้างนามแฝงไม่ใช่เวลารันไทม์ อย่างไรก็ตามฉันได้สร้างวิธีแก้ปัญหาโดยใช้ฟังก์ชั่นเชลล์ (หลังจาก googling เล็กน้อย) ดังนี้: ฟังก์ชั่น mkcd () { mkdir $ 1 cd $ 1 } แค่อยากรู้ว่ามีวิธีสร้างนามแฝงที่ยอมรับพารามิเตอร์ CL หรือไม่ BTW - ฉันใช้ 'bash' เป็นเชลล์เริ่มต้นของฉัน
288 shell  alias 

9
ทำไมคุณต้อง. / (dot-slash) ก่อนที่จะปฏิบัติการหรือชื่อสคริปต์เพื่อรันในทุบตี?
เมื่อรันสคริปต์ใน bash ฉันต้องเขียน./ตอนแรก: $ ./manage.py syncdb หากฉันไม่ฉันได้รับข้อความแจ้งข้อผิดพลาด: $ manage.py syncdb -bash: manage.py: command not found อะไรคือสาเหตุของสิ่งนี้? ฉันคิดว่า.เป็นนามแฝงสำหรับโฟลเดอร์ปัจจุบันดังนั้นการโทรทั้งสองนี้ควรเทียบเท่า ฉันยังไม่เข้าใจด้วยว่าเหตุใดฉันจึงไม่ต้องการ./เมื่อเรียกใช้แอปพลิเคชันเช่น: user:/home/user$ cd /usr/bin user:/usr/bin$ git (ซึ่งทำงานโดยไม่มี./)
288 bash  shell  unix  command-line 


19
ฉันจะสลับบรรทัดของไฟล์ข้อความในบรรทัดคำสั่ง Unix หรือในเชลล์สคริปต์ได้อย่างไร
ฉันต้องการสับเปลี่ยนบรรทัดไฟล์ข้อความแบบสุ่มและสร้างไฟล์ใหม่ ไฟล์อาจมีหลายพันบรรทัด ฉันจะทำอย่างนั้นด้วยcat, awk, cutetc?

11
วิธีรับอาร์กิวเมนต์ด้วยค่าสถานะใน Bash
ฉันรู้ว่าฉันสามารถรับพารามิเตอร์ตำแหน่งได้อย่างง่ายดายเช่นนี้ใน bash: $0 หรือ $1 ฉันต้องการใช้ตัวเลือกการตั้งค่าสถานะเช่นนี้เพื่อระบุสิ่งที่แต่ละพารามิเตอร์ใช้: mysql -u user -h host เป็นวิธีที่ดีที่สุดในการรับ-u paramค่าและ-h paramค่าตามธงแทนโดยตำแหน่งคืออะไร?
283 bash  shell 

7
ฉันสามารถส่งออกตัวแปรไปยังสภาพแวดล้อมจากสคริปต์ทุบตีโดยไม่ต้องจัดหาได้หรือไม่
สมมติว่าฉันมีสคริปต์นี้ ส่งออกทุบตี : #! /usr/bin/env bash export VAR="HELLO, VARIABLE" เมื่อฉันรันสคริปต์และพยายามเข้าถึง$VARฉันจะไม่ได้รับค่าใด ๆ ! echo $VAR มีวิธีเข้าถึง$VARโดยเพียงแค่รันexport.bashโดยไม่ต้องจัดหามันหรือไม่

5
Bash conditionals: วิธีการ“ และ” การแสดงออก? (ถ้า [! -z $ VAR && -e $ VAR])
ฉันเดาว่าฉันยังไม่ชัดเจนเกี่ยวกับวิธีการทดสอบ "และ" ฉันต้องการตรวจสอบให้แน่ใจว่ามีการโต้แย้งที่ใช้งานได้ดี[ -e $VAR ]แต่กลับกลายเป็นว่าการประเมินนั้นเป็นจริงในสตริงว่าง ซึ่งฉันไม่ต้องการ ฉันจะ 'และ' พวกเขาเข้าด้วยกันได้อย่างไร หรือมีการทดสอบ unary อื่นที่ทำสิ่งที่ฉันต้องการได้หรือไม่
281 bash  shell 

3
ใช้สคริปต์เมื่อเข้าสู่ระบบ mac [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน7 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันสงสัยว่าใครสามารถช่วยฉันออกด้วยการรับไฟล์. sh ให้ทำงานเมื่อฉันลงชื่อเข้าใช้บัญชีของฉันบนคอมพิวเตอร์ของฉัน ฉันใช้ Mac OS X 10.6.7 ฉันมีไฟล์ "Example.sh" ที่ฉันต้องการเรียกใช้เมื่อลงชื่อเข้าใช้คอมพิวเตอร์ของฉัน ฉันไม่มีปัญหาในการใช้งานเมื่อฉันเข้าสู่ระบบแล้ว แต่ฉันต้องการให้มันทำงานโดยอัตโนมัติ มีคนบอกว่าจะเพิ่มลงในไฟล์เชลล์ล็อกอิน แต่ฉันไม่รู้ว่าอยู่ที่ไหน โปรดช่วยด้วย

15
การใช้คำสั่ง RUN ใน Dockerfile ด้วย 'แหล่งที่มา' ไม่ทำงาน
ฉันมี Dockerfile ที่ฉันรวมตัวกันเพื่อติดตั้งสภาพแวดล้อมของ vanilla python (ซึ่งฉันจะทำการติดตั้งแอพ แต่ในภายหลัง) FROM ubuntu:12.04 # required to build certain python libraries RUN apt-get install python-dev -y # install pip - canonical installation instructions from pip-installer.org # http://www.pip-installer.org/en/latest/installing.html ADD https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py /tmp/ez_setup.py ADD https://raw.github.com/pypa/pip/master/contrib/get-pip.py /tmp/get-pip.py RUN python /tmp/ez_setup.py RUN python /tmp/get-pip.py RUN pip install --upgrade pip # …
274 bash  shell  docker 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.