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

Bash เป็นเชลล์ฟรีสำหรับระบบปฏิบัติการยูนิกซ์จากโครงการ GNU

3
echo $ ((2 # $ 1)) ทำอะไรกันแน่
สคริปต์ทุบตีต่อไปนี้แสดงจำนวนทศนิยมเมื่อได้รับเลขฐานสอง echo $((2#$1)) ทำไมล่ะ ฉันเข้าใจว่า$1เป็นอินพุต อาจ2เป็นฐาน (ไบนารี) แต่ฉันไม่เข้าใจไวยากรณ์ที่ใช้
53 bash 

8
ฉันจะใช้เชลล์เหมือน Bash บน Windows ได้อย่างไร
ฉันใช้ Linux และ Mac และฉันจะสอนบางสิ่งบรรทัดคำสั่งในไม่ช้า ฉันจะติดตั้งอะไรบน Windows เพื่อให้หน้าต่างเทอร์มินัลคล้ายกับเชลล์ Mac / Linux Bash พื้นฐานมากที่สุด ฉันต้องการกำหนด. bash_aliases ด้วยถ้าเป็นไปได้

6
Windows 10 build 14316: Ctrl + v ไม่ทำงานบน Bash บน Ubuntu บน Windows
ในตัวสร้างภายในวงใน Windows 10 ใหม่ 14316 ฉันไม่สามารถใช้ Ctrl + V (ทางลัดสำหรับวาง) บน Bash ใหม่บน Ubunbu บนแอพ Windows มีใครมีปัญหานี้อีกบ้างไหม ทางออกใด ๆ ? ฉันได้แก้ไขคุณสมบัติของแอพเพื่อเปิดใช้งานทางลัดและการควบคุม นอกจากนี้ฉันได้ลอง Ctrl + Shift + V และ Shift + Insert แล้วก็ใช้ไม่ได้

9
ฉันจะเพิ่มคำสั่ง 'tree' ลงใน git-bash บน Windows ได้อย่างไร
ฉันใช้ git-bash ใน Windows 7 ฉันต้องการดูแผนผังของไดเรกทอรีปัจจุบัน อย่างไรก็ตาม: jcollum@DEVELOPER01 ~/Dev/express_coffee $ tree . sh.exe": tree: command not found ตกลงดังนั้นฉันไม่ได้มีคำสั่งต้นไม้ ฉันจะติดตั้งได้อย่างไร ฉันพบบทความ แต่สำหรับ Macs
53 windows-7  bash  git  git-bash 

5
วิธี "unextract" ไฟล์ซิปได้อย่างไร
ฉันคลายซิปไฟล์ลงในโฟลเดอร์ที่ไม่ว่างเปล่า ไฟล์ zip มีไฟล์จำนวนมากและลำดับชั้นลึกที่ผสานกับแผนผังที่มีอยู่ของไดเรกทอรีเป้าหมาย ฉันจะลบไฟล์และไดเรกทอรีที่สร้างโดยการแตกไฟล์โดยไม่ทำลายไฟล์และไดเรกทอรีที่มีอยู่แล้วได้อย่างไร แน่นอนฉันยังมีไฟล์ zip ที่ฉันรวมอยู่ด้วยดังนั้นข้อมูลจึงอยู่ที่นั่น
52 linux  bash  zip 

4
ค้นหาไฟล์ที่กรองโดยหลายนามสกุล
ไวยากรณ์ที่ถูกต้องสำหรับ: find . -type f -name \*.\(shtml\|css\) ใช้งานได้ แต่ไม่เหมาะสม: find . -type f -name \*.shtml > f.txt && find . -type f -name \*.css >> f.txt วิธีการทำเช่นเดียวกัน แต่ในการกดแป้นพิมพ์น้อยลง?

6
ไม่พบคำสั่งเมื่อใช้ sudo
มีคำถามสองสามข้อเกี่ยวกับเว็บไซต์ที่ดูเหมือนว่าเกี่ยวข้องกับปัญหาของฉัน แต่ฉันไม่สามารถหาวิธีแก้ปัญหาได้ ระบบปฏิบัติการของฉันคือ Ubuntu 12.04 ฉันmvnติดตั้ง/tools/noarch/apache-maven-3.1.1แล้วและฉันได้เพิ่มบรรทัดต่อไปนี้ในตอนท้ายของฉัน/etc/profile: export M2_HOME=/tools/noarch/apache-maven-3.1.1 export PATH=$M2_HOME/bin:$PATH source /etc/profileหลังจากนั้นฉันดำเนินการ ตอนนี้ปัญหาของฉันคือเมื่อฉันเรียกใช้mvn --versionคำสั่งที่ประสบความสำเร็จและmvnปฏิบัติการพบว่าในขณะที่ถ้าผมดำเนินการ: ฉันจะได้รับการส่งออก:sudo mvn --version sudo: mvn: command not foundฉันรู้ว่าPATHอาจแตกต่างกันเมื่อฉันรันคำสั่งด้วยsudoและนั่นคือสาเหตุที่ฉันลองทำสิ่งนี้: $>sudo echo $PATH /tools/noarch/apache-maven-3.1.1/bin:... some other stuff ... สิ่งที่ฉันพยายามอีกประการหนึ่งคือการดำเนินการแล้วพิมพ์sudo su - mvn --versionในกรณีนี้mvnจะพบว่าประสบความสำเร็จและคำสั่งประสบความสำเร็จ เกิดขึ้นที่นี่คืออะไร?
52 linux  ubuntu  bash  sudo 

5
วิธี cd ลงใน thumb drive จาก terminal (Mac OSX)
ฉันจะเปลี่ยนเป็นไดเรกทอรีของ thumbdrive ของฉันได้อย่างไร ฉันได้รับการ poking รอบและดูว่าคำสั่งนี้ "รายการ diskutil" รายการดิสก์ท้องถิ่นของฉันทั้งหมด ที่ผลิตสิ่งนี้ .. David-Adamss-MacBook-Pro:~ davidadams$ diskutil list /dev/disk0 #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *250.1 GB disk0 1: EFI 209.7 MB disk0s1 2: Apple_HFS Macintosh HD 249.7 GB disk0s2 /dev/disk3 #: TYPE NAME SIZE IDENTIFIER 0: FDisk_partition_scheme *4.0 GB disk3 1: …
52 mac  macos  bash  terminal 

7
การใช้การโยงคีย์เทอร์มินัลด้วย bash บน macOS
ฉันพยายามเรียนรู้แป้นพิมพ์ลัดสำหรับเชลล์บน macOS แต่เมื่อฉันลองใช้ALT+ Bมันไม่ทำงาน คุณจะค้นหากำหนดค่าและใช้การโยงคีย์ในเชลล์ได้อย่างไร? แผ่นชีทใดก็ได้จะเป็นประโยชน์

7
จะตรวจสอบว่า file2 ใหม่กว่า file1 ใน bash ได้อย่างไร?
ฉันจะตรวจสอบว่าfile2มีการแก้ไขครั้งสุดท้ายหลังจากได้file1อย่างไร ในตัวอย่างนี้perlมีการปรับเปลี่ยนเมื่อเร็ว ๆ stackนี้มากกว่า มีคำสั่ง bash หรือ Linux ที่สามารถเปรียบเทียบไฟล์เหล่านี้ตามเวลาการแก้ไขหรือไม่? -rw-r--r-- 1 root root 1577 Sep 7 22:55 stack -rwxr-xr-x 1 root root 626 Sep 7 23:10 perl
51 bash 

3
วิธีป้องกัน SSH จากการตัดการเชื่อมต่อหากไม่ได้ใช้งานเป็นระยะเวลาหนึ่ง
ฉันมีการเชื่อมต่อ ssh กับเครื่องที่ถูกตัดการเชื่อมต่อโดยเครื่องหลังจาก 30 นาทีที่ไม่มีการป้อนข้อมูลจากผู้ใช้ อย่างไรก็ตามถ้าฉันเริ่มบางสิ่งบางอย่างtopการเชื่อมต่อยังคงอยู่ เนื่องจากนี่เป็นเครื่องของไคลเอ็นต์ฉันจึงไม่สามารถกำหนดค่าเซิร์ฟเวอร์ SSH ของเครื่องนั้นใหม่ topดังนั้นฉันกำลังมองหาวิธีที่จะตรวจสอบโดยอัตโนมัติเกียจคร้านและเริ่มต้นสิ่งที่ต้องการ ชนิดของ "สกรีนเซฟเวอร์" สำหรับ Bash ฉันรู้ว่าฉันสามารถทำได้ด้วยscreenแต่น่าเสียดายที่screenไม่ได้ติดตั้งและฉันไม่สามารถติดตั้งซอฟต์แวร์ได้ ดังนั้นฉันต้องใช้สิ่งที่ Bash เสนอ เพื่อให้ชัดเจน: ฉันกำลังมองหาโซลูชันที่ฉันเริ่มหลังจากเข้าสู่ระบบแล้วฉันต้องการใช้เทอร์มินัลนั้นเดินไปกลับมาอีกสองชั่วโมงต่อมาและทำงานต่อไปโดยไม่ต้องพิมพ์อะไรก่อนเดินออกไป นอกจากนี้ฉันไม่ได้มองหาสิ่งอุโมงค์ (เพราะฉันแนะนำเครื่องมือที่ดีsshuttle ) ความคิดใด ๆ
51 linux  bash  ssh 

2
ทุบตีถ้าในบรรทัดเดียว
ฉันต้องการทราบว่าฉันจะเขียนได้อย่างไรหากเงื่อนไขในสคริปต์ทุบตีในบรรทัดเดียว ตัวอย่างเช่นฉันจะเขียนสิ่งนี้ในบรรทัดเดียวได้อย่างไรแล้ววางอีกอันเหมือนในบรรทัดถัดไป if [ -f "/usr/bin/wine" ]; then export WINEARCH=win32 fi ฉันถามสิ่งนี้เพราะฉันมีนามแฝงไม่มากใน. bashrc ของฉันและฉันมี. bashrc (ซิงค์) เหมือนกันในหลาย ๆ ระบบ แต่ฉันไม่ต้องการนามแฝงทั้งหมดในแต่ละระบบ ฉันใส่พวกเขาส่วนใหญ่ไว้ในงบถ้าและมันทำงานได้อย่างสวยงามในขณะนี้ แต่พวกเขาใช้พื้นที่จำนวนมาก 3 บรรทัดแต่ละบรรทัดบวกกับบรรทัดว่างระหว่างพวกเขา (ฉันชอบให้พวกเขามองเห็นได้ง่าย) ฉันจะใช้เทคนิคนี้สำหรับตัวแปรสภาพแวดล้อมด้วย

9
ทำไม Bash อยู่ทุกหนทุกแห่ง (โดยส่วนใหญ่ถ้าไม่ใช่ลีนุกซ์ลีนุกซ์ทุกรุ่น)?
โดยค่าเริ่มต้นจะใช้ Bash ในการแจกแจง Linux ทุกครั้งที่ฉันลองผ่านทางเลือกเช่นZ shell (zsh) มีเหตุผลทางเทคนิคหรือประวัติศาสตร์สำหรับสิ่งนี้หรือไม่?
50 linux  bash  shell 

4
ความแตกต่างระหว่าง“ a = b” และ“ ส่งออก a = b” ใน bash
ความแตกต่างระหว่าง: a=b และ export a=b ในทุบตี? ฉันเข้าใจว่าพวกเขาทั้งสองกำหนดตัวแปรสภาพแวดล้อม แต่ฉันไม่เข้าใจความแตกต่างอย่างเต็มที่

7
ฉันจะแปลงตัวแปร bash array เป็นสตริงที่คั่นด้วย newlines ได้อย่างไร
ฉันต้องการเขียนตัวแปรอาเรย์ bash ลงในไฟล์โดยแต่ละองค์ประกอบในบรรทัดใหม่ ฉันสามารถทำสิ่งนี้ได้ด้วย for for loop แต่มีวิธีอื่น (สะอาดกว่า) ในการเข้าร่วมองค์ประกอบด้วย\nหรือไม่
50 bash  newlines 

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