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

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

8
จัดแนวส่วนขวาของพรอมต์
ฉันแน่ใจว่าฉันเห็นใครบางคนมีส่วนหนึ่งของการพร้อมท์ของพวกเขาชิดขวาในหน้าต่างเทอร์มินัลของพวกเขาแล้วมีเคอร์เซอร์ที่แท้จริงเริ่มต้นในบรรทัดที่สอง ฉันรู้ว่าฉันสามารถบรรลุบรรทัดที่สองด้วย "\ n" ใน PS1 แต่ฉันไม่สามารถหาวิธีจัดแนวของส่วนทางด้านขวา เป็นสิ่งที่ฉันเห็นเพียงแค่การเพิ่มช่องว่างระหว่างสองสาย?
25 bash  command-line  ps1 

3
วิธีอัปเดต bash บน Mac OS X Yosemite
เพียงแค่พยายามเรียนรู้การทุบตีสคริปต์เล็กน้อย รุ่นทุบตีเก่าของฉัน: Bash version 3.2.53(1)-release... ฉันได้อัปเดตทุบตีบน mac os x yosemite ด้วย homebrew: brew update brew install bash จากนั้นในคุณสมบัติขั้วฉันได้เปลี่ยนเส้นทางมาตรฐานเปลือกจาก/bin/bashไป/usr/local/bin/bash(ตามที่ผมเข้าใจนี่คือที่ homebrew ติดตั้งทุบตีปรับปรุง) จากนั้นฉันตรวจสอบผลลัพธ์อีกครั้ง (และดูเหมือนว่าจะดีทั้งหมด): $ echo $BASH_VERSION Bash version 4.0.33(0)-release... แต่เมื่อฉันพยายามเขียนสคริปต์ทุบตีง่าย: #!/bin/bash echo "Bash version ${BASH_VERSION}..." for i in {0..10..2} do echo "Welcome $i times" done ผลลัพธ์คือ: Bash version 3.2.53(1)-release... Welcome {0..10..2} …

4
ตรวจสอบจำนวนอัปเดตความปลอดภัยที่รอดำเนินการใน Ubuntu
ให้ฉันเริ่มต้นด้วยการบอกว่าฉันถูกห้ามไม่ให้เปิดใช้งานการอัปเดตอัตโนมัติบนเซิร์ฟเวอร์ Ubuntu ของเราสำหรับทั้งความปลอดภัยและแพ็คเกจปกติ เมื่อฉันเข้าสู่เซิร์ฟเวอร์ Ubuntu ใด ๆ ของฉันสี่ข้อความต้อนรับประกอบด้วย: 39 packages can be updated. 26 updates are security updates. อย่างไรก็ตามเมื่อฉันเรียกใช้ปลั๊กอิน Nagios ที่ตรวจสอบ APT ฉันจะได้รับ: % /usr/lib/nagios/plugins/check_apt APT WARNING: 33 packages available for upgrade (0 critical updates). ฉันจำเป็นต้องรู้วิธีการตรวจสอบอย่างถูกต้องว่ามีการปรับปรุงความปลอดภัยและการปรับปรุงปกติ เมื่อฉันทำได้ฉันวางแผนที่จะเขียนสคริปต์ Nagios ที่จะส่งคืนคำเตือนสำหรับการอัปเดตปกติที่รอดำเนินการและที่สำคัญยิ่งสำหรับการอัปเดตความปลอดภัยที่ค้างอยู่ ใครรู้วิธีตรวจจับสองเงื่อนไขนี้
25 linux  ubuntu  bash  shell  nagios 

3
Bash Man Page: kill <pid> vs kill -9 <pid>
หน้าคนของฉันไม่ได้บันทึกความแตกต่างระหว่าง kill &lt;pid&gt; และ kill -9 &lt;pid&gt; เนื่องจากสิ่งเหล่านี้ทำสิ่งที่แตกต่างกันเพราะเหตุใด -9 จึงไม่มีการจัดทำเป็นเอกสารในkillmanpage? ฉันคิดว่าบางทีมันเป็นสิ่งที่เฉพาะเจาะจงของหอยดังนั้นฉันจึงดูในหน้าคนทุบตีด้วย แต่ไม่มีโชค คำถามโบนัส: -9 ทำอะไรได้บ้าง
25 unix  bash  kill  manpages 

2
แท็บเสร็จด้วยไดเรกทอรี / ลิงค์
ฉันมีปัญหากับแท็บ - เสร็จสิ้นใน terminal ทั้ง archlinux และ ubuntu: ฉันมีลิงค์ที่เชื่อมโยงไปยังไดเรกทอรีชื่อ "บางอย่าง" ในไดเรกทอรีบ้านของฉัน ตอนนี้เมื่อฉันเปิดเทอร์มินัลและต้องการทำบางสิ่งกับไดเรกทอรีนั้นสมมุติว่าcdฉันพิมพ์cd sometแล้วกด tab เพราะตอนนี้ "บางอย่าง" เป็นความเป็นไปได้เพียงอย่างเดียวที่จะทำให้เสร็จ ปัญหาคือไม่มีสิ่งใดทับหลัง (อย่างที่ควรจะเป็นเพราะมันเป็นลิงค์ไปยังไดเรกทอรี) ฉันต้องกดแท็บอีกครั้งเพื่อให้สแลชปรากฏ มีวิธีแก้ไขเช่นนี้หรือไม่ ดังนั้นเครื่องหมายทับจะปรากฏขึ้นโดยตรง

11
จะลบไฟล์ที่ซ้ำกันในไดเรกทอรีได้อย่างไร?
ฉันดาวน์โหลดรูปภาพจำนวนมากในไดเรกทอรี ดาวน์โหลดเปลี่ยนชื่อไฟล์ที่มีอยู่แล้ว ฉันยังเปลี่ยนชื่อไฟล์บางไฟล์ด้วยตนเอง a.jpg b.jpg b(2).jpg hello.jpg &lt;-- manually renamed `b(3).jpg` c.jpg c(2).jpg world.jpg &lt;-- manually renamed `d.jpg` d(2).jpg d(3).jpg วิธีลบรายการที่ซ้ำกันออก ผลลัพธ์ควรเป็น: a.jpg b.jpg c.jpg world.jpg หมายเหตุ: ชื่อไม่สำคัญ ฉันแค่ต้องการไฟล์ uniq
25 bash 

5
วิธีป้อนข้อมูลการเข้าสู่ระบบสำหรับเว็บไซต์จากบรรทัดคำสั่ง linux
การเชื่อมต่ออินเทอร์เน็ตของฉันจัดทำโดยมหาวิทยาลัย มันได้รับการคุ้มครองในการรวมชื่อผู้ใช้ / รหัสผ่าน ซึ่งหมายความว่าเมื่อฉันเปิดเครื่องคอมพิวเตอร์ฉันต้องเปิดเว็บเบราว์เซอร์และเปิดเว็บไซต์ตามอำเภอใจ จากนั้นฉันก็ถูกเปลี่ยนเส้นทางไปยังหน้าเว็บซึ่งมีสองรูปแบบ (เหนือสิ่งอื่นใด) ในนี้ฉันต้องใส่ชื่อผู้ใช้และรหัสผ่าน ฉันจัดการเพื่อทำเช่นนี้กับ firefox (ซึ่งสามารถบันทึกรหัสผ่าน) และยังมีการเชื่อมโยง (ซึ่งโหลดได้เร็วขึ้นและจากบรรทัดคำสั่ง) มีวิธีใดที่จะทำให้กระบวนการล็อกอินเป็นอัตโนมัติโดยใช้สคริปต์ทุบตีหรือไม่? สิ่งนี้จะอนุญาตให้ทำการล็อกอินเมื่อทำการบูทเพื่อให้มีอยู่แล้วเมื่อฉันเริ่มเซิร์ฟเวอร์ X

4
ไม่พบคำสั่ง Cygwin Dos2Unix
ฉันมีปัญหาในการใช้ cygwin ฉันกำลังพยายามใช้โปรแกรมอรรถประโยชน์ dos2unix และ cygwin กำลังขว้าง-bash: dos2unix: command not foundเมื่อฉันกลับไปที่โปรแกรมติดตั้งและตรวจดูแพ็คเกจฉันไม่สามารถค้นหา dos2unix ได้ แต่เมื่อฉันดูรายการแพคเกจของ cygwin มันชัดเจนอยู่ที่นั่น ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมมาก!
25 windows  bash  cygwin 

1
ทำไมแมวถึงไม่เปลี่ยนเวลาเข้าถึง?
การเรียกที่สองเพื่อ cat ไฟล์ไม่ได้อัพเดตเวลาเข้าถึง ฉันคาดหวังว่าเวลาในการเข้าถึงจะได้รับการอัปเดตตลอดเวลาเมื่อมีการแสดงเนื้อหาไฟล์ ฉันเห็นลักษณะการทำงานเดียวกันถ้าฉันเปิดไฟล์ในเว็บเบราว์เซอร์ เวลาในการเข้าถึงไม่ได้รับการอัพเดตอย่างสม่ำเสมอ ฉันเข้าใจผิดเวลาเข้าถึงหรือไม่ แมวสองสายต่างกันอย่างไร ทดสอบ $ สัมผัส ทดสอบสถิติ $ ไฟล์: `ทดสอบ ' ขนาด: 0 บล็อก: 0 IO บล็อก: ไฟล์ว่างเปล่าปกติ 4096 อุปกรณ์: 803h / 2051d ไอโหนด: 152694 ลิงค์: 1 การเข้าถึง: (0664 / -rw-rw-r--) Uid: (1001 / aaron) Gid: (1001 / aaron) การเข้าถึง: 2012-08-21 11: 05: 40.586020996 +0200 …
25 linux  bash  timestamp  cat 

3
ชายแดนบานหน้าต่าง Tmux ปัจจุบันไม่ชัดเจน
คำถามนี้ถูกโยกย้ายจาก Stack Overflow เพราะสามารถตอบได้ใน Super User อพยพ 6 ปีที่แล้ว ฉันกำลังดิ้นรนที่จะบอกว่าบานหน้าต่างใดเป็นบานหน้าต่างปัจจุบันใน tmux ถ้ามีเพียงสองบาน ขอบดูเหมือนจะเน้นขอบที่อยู่ติดกันซึ่งทำให้ไม่สามารถบอกได้ นี่คือ Gif เพื่อเน้นสิ่งที่ฉันหมายถึง ฉันกำลังทุบตีและการกำหนดค่าสำหรับลักษณะนั้น set-option -g pane-border-fg white set-option -g pane-active-border-fg green ใครมีเคล็ดลับที่จะทำให้ชัดเจนยิ่งขึ้น?
25 bash  tmux 

2
bash's * จับคู่ไฟล์ตามลำดับตัวอักษรและตัวเลขหรือไม่
ฉันต้องการต่อไฟล์หลายไฟล์เข้าด้วยกันตามลำดับชื่อไฟล์ จะปลอดภัยหรือไม่ที่จะสมมติว่าสิ่งนี้จะให้พวกเขาตามลำดับตัวอักษรและตัวเลข? cat * เช่นคำสั่งเดียวกับที่lsให้
25 bash  globbing 

1
แปลง symlink เป็นฮาร์ดลิงก์
ฉันต้องการแปลงซอฟต์ลิงค์ซ้ำเป็นฮาร์ดลิงก์ในไดเรกทอรีซ้ำ ๆ ฉันลองทำสิ่งนี้แล้ว: for f in *; do (mv $f{,~} &amp;&amp; ln $(readlink $f~) &amp;&amp; rm $f~) done … แต่มันมีปัญหาสำคัญสองประการ: ไม่เกิดซ้ำ เลือกไฟล์ที่ไม่ใช่ลิงก์สัญลักษณ์ มันจะดีถ้าได้รับบรรทัดข้างต้นfind -type lแต่ฉันไม่แน่ใจว่าจะทำอย่างไร

2
เหตุใดจึงจำเป็น xargs
สมมติว่าฉันต้องการลบไฟล์ทั้งหมดในไดเรกทอรียกเว้นไฟล์ที่มีชื่อว่า "notes.txt" ฉันจะทำเช่นนี้กับไปป์ไลน์, ls | grep -v "notes.txt" | xargs rm. เหตุใดฉันจึงต้องการ xargs หากเอาต์พุตของไพพ์ที่สองคืออินพุตที่ rm ควรใช้? เพื่อประโยชน์ในการเปรียบเทียบไปป์ไลน์echo "#include &lt;knowledge.h&gt;" | cat &gt; foo.cแทรกข้อความ echoed ลงในไฟล์โดยไม่ต้องใช้ xargs ท่อสองท่อนี้แตกต่างกันอย่างไร?
25 bash  pipe  xargs  coreutils 

1
ปิดใช้งานคำแนะนำการเติมข้อความอัตโนมัติใน iTerm2
ฉันต้องการที่จะปิดการใช้งานการเติมข้อความอัตโนมัติประวัติของสิ่งที่เกิดขึ้นในiTermดังแสดงในภาพด้านล่าง: ฉันต้องการกำจัดคำใบ้สีน้ำเงินที่เกิดขึ้นเมื่อฉันเริ่มพิมพ์คำสั่งที่คล้ายกับคำสั่งที่ถูกเรียกใช้ก่อนหน้านี้

4
ทรัพยากรไคลเอ็นต์ SSH ระบบย่อย Windows 10 Linux ไม่สามารถใช้งานได้ชั่วคราว
ฉันพยายามที่จะ ssh ลงในเซิร์ฟเวอร์ระยะไกลของฉันภายในระบบย่อย Linux 10 ของ Windows ฉันใช้ MS Windows 10 Home Insider Preview build 14366 ขณะที่พรอมต์คำสั่งฉันพิมพ์: ssh user@domain.com ไม่กี่วินาทีหลังจากพิมพ์คำสั่ง ssh ฉันได้รับข้อความต่อไปนี้: ssh: เชื่อมต่อกับโฮสต์ domain.com พอร์ต 22: ทรัพยากรไม่สามารถใช้งานได้ชั่วคราว ฉันสามารถเชื่อมต่อโดยใช้ Putty ได้สำเร็จและใช้ ssh ภายใน Git Bash ดังนั้นสิ่งนี้ทำให้ฉันเชื่อว่าปัญหานี้เกิดขึ้นในพีซีของฉันและเฉพาะเจาะจงมากขึ้นในระบบย่อยของ Linux ฉันยังคงเป็นมิตรกับสิ่งแวดล้อมของ Linux และไม่แน่ใจว่าจะตีความข้อความนี้อย่างไร ทรัพยากรใดไม่พร้อมใช้งานและฉันควรทำอย่างไรเพื่อให้พร้อมใช้งาน
25 windows-10  bash  ssh 

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