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

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

5
เหตุใด Ctrl-Arrow ไม่ทำงานในการทุบตีใน OS X
ฉันใช้Ctrl- ←และCtrl- →กับทุกระบบ Linux ที่ฉันทำงาน แต่ชุดคีย์เหล่านี้ไม่สามารถใช้งานได้กับ Macbook Pro กำลังใช้งาน Snow Leopard และฉันใช้แอพพลิเคชั่น Terminal ในตัว ดูเหมือนว่าชุดคีย์จะไม่ถูกจับด้วยอะไรมาก่อนหรือโดย Terminal เพราะถ้าฉัน ssh ไปยังหนึ่งในเซิร์ฟเวอร์ Linux ของฉันฉันสามารถใช้Ctrl- ←/ →เพื่อข้ามไปยังคำถัดไป / ก่อนหน้าในบรรทัดคำสั่ง อย่างไรก็ตามเมื่อฉันลองชุดคีย์นี้เป็นการทุบตีใน Macbook ของฉันฉันเพิ่งได้รับ "C" สำหรับลูกศรขวาและ "D" สำหรับลูกศรซ้าย ความคิดเห็นใด ๆ เกี่ยวกับวิธีที่ฉันจะได้รับกุญแจเหล่านี้ให้ทำงานในดาร์วินทุบตี?
15 macos  bash 

3
วิธีการเปิดไฟล์ในกลุ่มโดยใช้ไพพ์
ฉันได้ใช้locateคำสั่งบ่อยมาก ดังนั้นถ้าฉันรันคำสั่งต่อไปนี้ locate updatedb | head -1 จากนั้นมันทำให้ฉัน O/p /usr/updatedb.conf ฉันสงสัยว่ามีคำสั่งใด ๆ ที่ให้ฉันเปิดไฟล์นั้นโดยตรงหรือไม่? ฉันหวังว่าจะมีอะไรเช่นนี้ locate updatedb | head -1 | vim
15 linux  bash  vim  pipe  locate 

2
iTerm2: ฟังก์ชั่น Alt-Dot พร้อม Cmd-Dot
มีวิธีใดเป็นที่รู้จักเพื่อให้บรรลุ "การแทรกคำสั่งสุดท้ายอาร์กิวเมนต์" - ฟังก์ชั่นที่มักจะมีอยู่ใน Bash โดยพิมพ์ Alt- (Alt และจุด) บน OSX โดยใช้ iTerm2? วิธีที่ฉันรู้ว่าสิ่งนี้ควรเป็นไปได้คือด้วยสองคีย์ - ลำดับ: Alt + . Esc + . The Esc- หนึ่งทำงานได้ แต่ Alt- ไม่. ไม่ได้อยู่กับ Alt- หรือ Cmd-
15 macos  bash  iterm2 

2
จะเปลี่ยนความละเอียดของ Bash สำหรับ Debian VM ได้อย่างไร?
ฉันพยายามเรียนรู้วิธีใช้ Linux กับ Debian 7 VM ที่ไม่มี GUI หน้าต่างขนาด 640x400 ที่ฉันทำงานอยู่นั้นรู้สึกหดตัวเล็กน้อยและต้องการทำให้มันใหญ่ขึ้นพูด 1024x768 ฉันจะทำสิ่งนี้ได้อย่างไร
15 linux  bash 

4
ทุบตีขยายวงกลมภายใน Makefile
ฉันต้องการทำการดำเนินการกับไฟล์ทั้งหมดในโฟลเดอร์เฉพาะที่ไม่ได้ขึ้นต้นด้วยคำนำหน้าเฉพาะ (พูดexclude_) ฉันมี bash forloop พร้อมกับ glob แบบขยายที่มีลักษณะดังนี้: for FILE in foo/bar/!(exclude_*) ; do echo $FILE ; done บนบรรทัดคำสั่งสิ่งนี้ใช้ได้ผล: $ for FILE in foo/bar/!(exclude_*) ; do echo $FILE ; done foo/bar/apple foo/bar/pear foo/bar/banana แต่เมื่อฉันใช้ใน makefile: target: for FILE in foo/bar/!(exclude_*) ; do echo $$FILE ; done ฉันได้รับข้อผิดพลาดต่อไปนี้: $ make for …
15 bash  make 

1
แหล่งที่มาของ conda เปิดใช้งาน foo อย่างไร
เอกสารประกอบของ Anaconda สำหรับการจัดการสภาพแวดล้อมระบุว่าการเปิดใช้งานสภาพแวดล้อมทำได้โดยใช้: source activate <env-name> ฉันสังเกตเห็นว่ามีการติดตั้ง conda activateอยู่ในเส้นทาง: $ which activate /Users/dilum/anaconda/bin/activate แหล่งค้นหาไฟล์ในพา ธ ด้วยหรือไม่ และฉันคิดว่าพารามิเตอร์ที่สอง (ชื่อสิ่งแวดล้อม) เป็นเพียงการประมวลผลโดยactivateสคริปต์หรือไม่
15 macos  bash  python 

1
เทียบเท่าคำสั่ง "source" ของ bash ใน Powershell หรือไม่
ในการรันสคริปต์ทุบตีทีละบรรทัด (เพื่อรักษาตัวแปรสภาพแวดล้อมเป็นต้น) จะทำสิ่งต่อไปนี้: $ . myscript.sh หรือ: $ source myscript.sh ฉันมีสคริปต์ PowerShell ที่ - หมู่สิ่งอื่น ๆ - ตั้งค่าของพร้อมผ่านฟังก์ชั่นpromptที่เรียกว่า เพียงแค่เรียกใช้สคริปต์นี้ (". \ myscript.ps1") จะไม่เปลี่ยนพรอมต์ อย่างไรก็ตามการเรียกใช้ฟังก์ชั่นทีละบรรทัดตามคำสั่งไม่ ดังนั้นสิ่งที่ฉันต้องการอย่างมีประสิทธิภาพคือsourceคำสั่งสำหรับ PowerShell เป็นไปได้ไหม? แก้ไข : ควรย้ายโพสต์นี้ไปยัง Stackoverflow หรือไม่ การชี้แจง 1 : เนื่องจากฉันเรียกใช้ฟังก์ชั่นนี้เฉพาะบนพื้นฐานความต้องการ (เช่นไม่ใช่สำหรับทุก PowerShell เซสชันและ / หรือเสมอ) ฉันไม่ต้องการที่จะเก็บไว้ในโปรไฟล์เริ่มต้น PowerShell ของฉัน
15 bash  powershell 

2
ฉันจะไพพ์เอาต์พุตจนถึงวันที่ -d“ value” ได้อย่างไร?
ฉันมีวันที่ "2014-01-30 05:04:27 GMT" และถ้าฉันเรียกใช้วันที่ -d "2014-01-30 05:04:27 GMT" ผลลัพธ์จะอยู่ในเขตเวลาของเซิร์ฟเวอร์ของฉัน ("พฤหัสบดี 30 มกราคม 16:04:27 EST 2014 ") ด้วยการใช้ grep และ cut ฉันได้แยกวันที่ในไฟล์ GMT ออกจากไฟล์ อย่างไรก็ตามฉันกำลังดิ้นรนเพื่อแปลงสิ่งนี้เป็นเวลาท้องถิ่นของฉัน ตัวอย่างเช่น: [user @ server log] # grep "something" logfile.txt | grep "สำเร็จแล้ว" | ตัด -f1 -d '[' เอาท์พุท: 2014-01-30 05:04:27 GMT สิ่งที่ฉันสามารถเพิ่มในตอนท้ายเพื่อส่งออกไปที่ "date -d"? พยายาม: …
15 linux  bash  grep  pipe  date 

3
การใช้คำสั่ง watch กับอาร์กิวเมนต์ที่มีเครื่องหมายคำพูด
ฉันกำลังพยายามทำให้นาฬิกาทำงานได้อย่างถูกต้องด้วยคำสั่งที่มีคำพูดและหน้าคนดูนั้นไม่ละเอียดมากนักเกี่ยวกับการทำงานของคำพูด เพื่อเป็นตัวอย่างที่เป็นรูปธรรมฉันจะรันคำสั่งต่อไปนี้ภายในนาฬิกาได้อย่างไร: ps -ef | awk -F' ' '{print $2}' ฉันได้พยายาม: watch "ps -ef | awk -F' ' '{print $2}'" และ watch 'ps -ef | awk -F\' \' \'{print $2}\'' แต่ไม่สามารถใช้งานได้อย่างถูกต้อง
15 bash  unix  watch 

1
วิธีเพิ่มไดเรกทอรีปัจจุบันไปยัง PATH ใน Linux อย่างถาวร? [ซ้ำ]
ซ้ำเป็นไปได้: เพิ่มโฟลเดอร์ไปที่ PATH ฉันต้องการเพิ่มไดเรกทอรีใน bash ของฉันเพื่อค้นหาและฉันใช้ $ PATH = .... มันทำงานได้ แต่เมื่อฉันเปิดหน้าต่างคำสั่งใหม่มันไม่ได้อยู่ที่นั่น ฉันจะเพิ่มสิ่งนี้ลงในพา ธ บน Linux อย่างถาวรได้อย่างไร
14 linux  bash  path 

3
Bash shell: แสดงรายการไฟล์ทุกประเภท. png หรือ. PNG?
ในสคริปต์ทุบตีฉันจะพูดว่า 'สำหรับไฟล์ประเภท. png หรือ .PNG ทั้งหมดได้อย่างไร' ฉันกำลังพยายาม: for i in (`ls *.PNG` && `ls *.png`) แต่ได้รับข้อผิดพลาดทางไวยากรณ์

3
เครื่องหมายดอกจันแบ็กสแลชเครื่องหมายโคลอนและสองใน (* \: 2) คืออะไร?
ความหมายของlsคำสั่งดังต่อไปนี้คืออะไร? ls -l *\:2,*T ls = รายการ -l = ยาว (รายการ) *TอาจหมายถึงTในตอนท้าย แต่สิ่งที่เกี่ยวกับที่*\:2และเครื่องหมายจุลภาค?
14 bash  expansion 


1
ความกังวลด้านความปลอดภัยของการแสดงคีย์ส่วนตัว ssh
ฉันทำผิดพลาดอย่างใหญ่หลวงหรืออย่างน้อยฉันก็คิดว่าฉันทำ: ฉัน "กด" คีย์ SSH ส่วนตัวของฉัน cat ~/.ssh/id_rsa ตอนนี้ฉันกลัวว่าฉันได้สร้างช่องโหว่ความปลอดภัยทำให้ผู้ใช้รายอื่นเห็นคีย์ส่วนตัวของฉันโดยดูที่ประวัติทุบตี / การเลื่อนกลับหรือใช้วิธีอื่น ดังนั้นคำถามของฉัน: ฉันประนีประนอมความปลอดภัยของกุญแจ SSH หรือไม่? มีวิธีการที่ปลอดภัยเพียงพอหรือไม่โดยไม่รวมวิธีที่ชัดเจน (และปลอดภัยที่สุด) ในการสร้างคู่คีย์ใหม่ (หมายเหตุ: ฉันเป็นผู้ใช้คนเดียวของเครื่องดังนั้นฉันจึงไม่ได้เกี่ยวข้องกับกรณีเฉพาะของฉัน แต่ฉันคิดว่านี่เป็นคำถามที่น่าสนใจ)

4
แสดงรายการไฟล์ด้วยสัญลักษณ์แทน UNIX
พูดเช่นฉันมีไฟล์ต่อไปนี้ในไดเรกทอรีการทำงานของฉัน: mjk0001.fits, mjk0002.fits, ... ตัวเลขเพิ่มขึ้นเรื่อย ๆ จนถึง mjk9999.fits มีวิธีใช้สัญลักษณ์ตัวแทน UNIX ในการแสดงรายการหรือดำเนินการกับกลุ่มตามลำดับหรือไม่? ตัวอย่างเช่นหากฉันต้องการเรียกใช้กระบวนการใน 0025 ถึง 0050 ฉันจะใช้รูปแบบใด ฉันได้ลองสิ่งต่อไปนี้แล้ว แต่ไม่ประสบความสำเร็จ: ls *[25-50].fits ls mjk00[25-50].fits ls mjk[0025-0050]* ls *[0025-0050]* ขอบคุณทุกคนล่วงหน้า MK
14 bash  unix  command-line  ls 

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