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

สคริปต์คือชุดคำสั่งที่เขียนในไฟล์ "ข้อความธรรมดา" ตัวแปลสคริปต์ (ตัวอย่างเช่น Bash หรือ shell อื่น, Python, Perl, Ruby, ฯลฯ ) อ่านไฟล์และดำเนินการตามคำแนะนำราวกับว่าพวกมันถูกป้อนที่ command prompt

5
บันทึกผลลัพธ์ของโปรแกรมด้วย PulseAudio
ฉันต้องการบันทึกผลลัพธ์ของโปรแกรมด้วยPulseAudioโดยใช้ command line / bash script มันเป็นสิ่งสำคัญที่จะไม่บันทึกเอาท์พุททั้งหมด แต่เพียงเอาท์พุทจากหนึ่งโปรแกรมเฉพาะ ฉันคิดว่าฉันจะต้องสร้าง null-sink ใหม่และย้ายเอาท์พุทของโปรแกรมไปที่ sink ใหม่นี้ กว่าบอกparec ที่จะใช้จอภาพนี้เพื่อบันทึก ขั้นตอนแรกจะเป็นดังนี้: pactl load-module module-null-sink sink_name=steam แต่จะย้ายเอาท์พุทของโปรแกรมไปที่ sink นี้ได้อย่างไร และวิธีการบันทึกอ่างล้างจานที่เฉพาะเจาะจงด้วยสคริปต์ทุบตี?

2
bashrc หรือ bash_profile
ฉันรู้ถึงความแตกต่างระหว่างสคริปต์ล็อกอิน bash สองตัว: .bashrc ทำงานโดยเชลล์ "ที่ไม่ใช่การเข้าสู่ระบบ" เท่านั้น .bash_profile(หรือ.bash_loginหรือ.profile) ถูกดำเนินการโดยเชลล์ "เข้าสู่ระบบ" ใครบ้างมีตัวอย่างที่ดีของสิ่งที่เหมาะสำหรับการดำเนินการเข้าสู่ระบบเท่านั้นเช่นที่ฉันใส่ไว้.bash_profileแต่พวกเขาจะไม่เข้าท่า.bashrc? (ฉันรู้ว่าส่วนใหญ่ของเรามา.bashrcจากแหล่งที่มา.bash_profileดังนั้นจึงดูเหมือนจะไม่มีประเด็นมากในคำถามตรงข้าม ... )
49 scripts  startup  bash 

3
ความหมายของ exit 0, exit 1 และ exit 2 ใน bash script
ฉันกำลังฝึกทำแบบฝึกหัด เขียนสคริปต์ที่จะได้รับหมายเลขเดือนเป็นอาร์กิวเมนต์และจะแปลหมายเลขนี้เป็นชื่อเดือน ผลลัพธ์จะถูกพิมพ์ไปยัง stdout ฉันได้แก้ปัญหา: #test for number of argument if [ "$#" -eq 0 ] ; then echo -e "No argument." echo -e "Write a number between 1 and 12." exit 1 elif [ "$#" -gt 1 ] ; then echo -e "More than 1 argument." echo -e "Write …
49 bash  scripts 


2
เชลล์สคริปต์เพื่อย้ายไฟล์ทั้งหมดจากโฟลเดอร์ย่อยไปยังโฟลเดอร์หลัก
ฉันได้รวมโฟลเดอร์ไว้ในโฟลเดอร์Aแล้ว Aฉันต้องการที่จะย้ายไฟล์จากโฟลเดอร์เหล่านั้นทั้งหมด หรือ ฉันต้องการตัดไฟล์ทั้งหมดจากโฟลเดอร์ย่อยและวางในโฟลเดอร์หลัก ทำอย่างไร
47 bash  scripts 

3
มีคำสั่งสำหรับเรียกใช้สคริปต์ตามบรรทัดของ shebang หรือไม่
หากฉันต้องการรันสคริปต์ทุบตีที่ไม่มีชุดสิทธิ์ดำเนินการฉันสามารถทำได้: bash script.sh ฉันควรใช้อะไรbashหากสคริปต์ไม่สามารถใช้งานได้และฉันไม่รู้จักล่ามที่ถูกต้อง มีคำสั่งที่ค้นหาล่ามจากแถว shebang และรันสคริปต์ด้วยหรือไม่

4
รันคำสั่ง nohup บน SSH จากนั้นตัดการเชื่อมต่อ
ฉันต้องการรันสคริปต์start.shบนเซิร์ฟเวอร์ระยะไกลซึ่งรันสิ่งนี้: nohup node server.js & อย่างไร้เดียงสาฉันเรียก SSH เช่นนี้ ssh myserver <<EOF ./start.sh & EOF สิ่งนี้จะเริ่มต้นสคริปต์ แต่จะไม่เชื่อมต่อกับเซสชัน ฉันต้องการทำตามขั้นตอนนี้ด้วยคำสั่งอื่น ๆ ในสคริปต์ดังนั้นจึงไม่ดี ฉันจะ SSH ไปยังเครื่องระยะไกลเรียกใช้nohupคำสั่งเป็นพื้นหลังแล้วตัดการเชื่อมต่อได้อย่างไร ฉันคิดว่าฉันสามารถทำให้กระบวนการ SSH เป็นพื้นหลังได้ แต่ดูเหมือนจะไม่ถูกต้อง

13
วิธีปัดเศษทศนิยมโดยใช้ bc ใน bash?
ตัวอย่างสั้น ๆ ของสิ่งที่ฉันต้องการใช้สคริปต์ทุบตี: #!/bin/bash echo "Insert the price you want to calculate:" read float echo "This is the price without taxes:" echo "scale=2; $float/1.18" |bc -l read -p "Press any key to continue..." bash scriptname.sh สมมติว่าราคาคือ: 48.86 คำตอบจะเป็น: 41.406779661 (41.40 จริง ๆ เพราะฉันใช้scale=2;) คำถามของฉันคือ: ฉันจะปัดทศนิยมที่สองเพื่อแสดงคำตอบด้วยวิธีนี้ได้อย่างไร: 41.41
45 bash  scripts  bc 


3
วิธีรันคำสั่งหลังจากดำเนินการต่อจากหยุดชั่วคราว?
ฉันมีสคริปต์ที่ทำงานเพื่อหยุดชั่วคราว / ทำงานต่อในแล็ปท็อปของฉัน แล้วฉันจะมีชุดของผู้อื่นxinput, xkbsetและxmodmapคำสั่งที่จะดำเนินการเมื่อฉันเริ่มต้นเซสชั่นที่จะมีสองนิ้วเลื่อนและแป้นพิมพ์ลัดการตั้งค่า เมื่อฉันหยุดการทำงานชั่วคราวการเลื่อนด้วยสองนิ้วและแป้นพิมพ์ลัดของฉันจะไม่ทำงาน ฉันต้องดำเนินการคำสั่งด้วยตนเองในไฟล์ที่สองอีกครั้ง ฉันจะเพิ่มสิ่งเหล่านี้ในสคริปต์ suspend / resume เพื่อทำสิ่งนี้โดยอัตโนมัติได้อย่างไร ดูด้านล่าง: หยุดชั่วคราว / สคริปต์ต่อ /etc/pm/sleep.d/20_custom-ehci_hcd #!/bin/sh #inspired by http://art.ubuntuforums.org/showpost.php?p=9744970&postcount=19 #...and http://thecodecentral.com/2011/01/18/fix-ubuntu-10-10-suspendhibernate-not-working-bug # tidied by tqzzaa :) VERSION=1.1 DEV_LIST=/tmp/usb-dev-list DRIVERS_DIR=/sys/bus/pci/drivers DRIVERS="ehci xhci" # ehci_hcd, xhci_hcd HEX="[[:xdigit:]]" MAX_BIND_ATTEMPTS=2 BIND_WAIT=0.1 unbindDev() { echo -n > $DEV_LIST 2>/dev/null for driver in $DRIVERS; …

4
ทำไม“ cd” ไม่ทำงานในเชลล์สคริปต์
ผมแค่อยากจะเขียนสคริปต์ที่เปลี่ยนแปลง directory ฉันใส่คำสั่งด้านล่างในไฟล์ /home/alex/pathABC #!/bin/sh cd /home/alex/Documents/A/B/C echo HelloWorld chmod +x pathABCฉันไม่ ในเทอร์มินัลในขณะที่/home/alexฉันทำงาน./pathABCแต่เอาต์พุตเป็นเพียงHelloWorldและไดเรกทอรีปัจจุบันจะไม่เปลี่ยนแปลง แล้วมีอะไรผิดปกติ?

5
จะตรวจสอบได้อย่างไรว่า $ 1 และ $ 2 เป็นโมฆะ?
ฉันใช้งานสคริปต์ที่ผ่านการโต้แย้งสตริงและฉันต้องการจะทำอย่างไรถ้าคำสั่งอื่นที่แสดงด้านล่าง if [ $1 != '' ] && [ $2 != '' ] then do something..... Error too many argumentแต่มันก็แสดงให้เห็นว่า ทำไม?


2
เปลี่ยนชื่อ / ถังช่วยเหลือโดยไม่ตั้งใจ!
ฉันมีกรณีฉุกเฉิน Linux และ Bash ที่นี่และเริ่มพยายามเขียนสคริปต์เพื่อเปลี่ยนชื่อไฟล์บางไฟล์ ห่วงตั้งใจก็ขึ้นไปเส้นทาง (วิ่งสคริปต์ในโฟลเดอร์ในเดสก์ทอป) และเปลี่ยนชื่อ/binไป/D_bin( D_เป็นคำนำหน้าผมที่เพิ่มขึ้น) ดังนั้นตอนนี้ระบบไม่สามารถใช้/binเนื้อหาจึงไม่มีbashไม่มีmvการเปลี่ยนชื่อไม่มีsudo... ไฟล์ ใน/D_binก็โอเคไม่ได้เปลี่ยนชื่อและสามารถคัดลอกวาง แต่ไม่สามารถสร้างโฟลเดอร์/binอีกครั้งโดยไม่ต้องทุบตี ระบบดูเสถียร แต่มีสิ่งน้อยมากและไม่สามารถเข้าถึงไฟล์ในเดสก์ท็อปได้ โฟลเดอร์/ชื่นชอบอื่น ๆก็/lib /sbin /etcดูเหมือนว่าจะตกลงเช่นกันและเดสก์ท็อปกราฟิกก็ยังอยู่ที่นั่น ฉันกลัวที่จะเริ่มระบบใหม่เพราะฉันไม่รู้ว่าจะสามารถบูตได้หรือไม่ มีเชลล์ในรูทหรือวิธีเปลี่ยนชื่อ/D_binกลับไป/binหรือไม่? ต้องการความช่วยเหลือโปรดงานที่สำคัญมากถูกบุกรุก สคริปต์ฆ่าตัวตายของฉัน: $: #!/bin/bash files=~/Desktop/folder_1/* for j in $files do cd $j for i in 10n* #file names starting by 10n do find * -maxdepth 0 ! -path . …

8
ทำไมคำสั่งใน /etc/rc.local ไม่ถูกเรียกใช้งานระหว่างการเริ่มต้น?
ฉันมีคำสั่งเดียวใน/etc/rc.localสคริปต์ของฉันที่ควรจะเริ่ม daemon การอัพเดทสำหรับTiny Tiny RSSในระหว่างการเริ่มต้น แต่สคริปต์ไม่ได้ถูกเรียกใช้ระหว่างการเริ่มต้น ทำไม? ไฟล์ /etc/rc.local ทั้งหมด: #!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order …

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