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

Bash (Bourne-Again SHell) เป็นเชลล์ที่ใช้ในอินเตอร์เฟสบรรทัดคำสั่งของ Ubuntu ตามค่าเริ่มต้น


5
ทำไม ~ / .bash_profile ไม่ได้รับแหล่งที่มาเมื่อเปิดเทอร์มินัล
ปัญหา ฉันมี Ubuntu 11.04 Virtual Machine และฉันต้องการตั้งค่าสภาพแวดล้อมการพัฒนา Java ของฉัน ฉันทำดังนี้ sudo apt-get install openjdk-6-jdk เพิ่มรายการต่อไปนี้ใน~ / .bash_profile export JAVA_HOME=/usr/lib/jvm/java-6-openjdk export PATH=$PATH:$JAVA_HOME/bin บันทึกการเปลี่ยนแปลงและออก เปิดเทอร์มินัลอีกครั้งและพิมพ์ดังต่อไปนี้ echo $JAVA_HOME (blank) echo $PATH (displayed, but not the JAVA_HOME value) ไม่มีอะไรเกิดขึ้นเช่นถ้าการส่งออกของ JAVA_HOME และการเพิ่มไปยัง PATH นั้นไม่เคยทำ วิธีการแก้ ฉันต้องไปที่~ / .bashrcและเพิ่มรายการต่อไปนี้ในตอนท้ายของไฟล์ #Source bash_profile to set JAVA_HOME and add …

6
ฉันจะทำให้พรอมต์บรรทัดคำสั่ง (ทุบตี) สั้นลงได้อย่างไร
ปัจจุบันคือ: michael@Castle2012-Ubuntu-laptop01:~/Dropnot/webs/rails_v3/linker/spec/controllers$ นอกการเปลี่ยนชื่อเครื่องและโครงสร้างไดเรกทอรีของฉัน ... ฉันจะทำให้มันเป็นอย่างนี้ได้อย่างไร: michael:controllers$

6
ฉันจะหาเวอร์ชั่นของ bash ที่ฉันใช้อยู่ได้อย่างไร?
(เรียนรู้ทุบตี) /bin/bash -vผมพยายามที่จะตรวจสอบรุ่นทุบตีดังนั้นฉันพิมพ์ นั่นแสดงข้อความจำนวนมากทั้งหน้าจอ (เนื้อหาของ. bashrc และไฟล์อื่น ๆ ที่มีแหล่งที่มาจากมัน) ฉันจะทำให้บางอย่างผิดพลาด (เช่นการเขียนทับไฟล์กำหนดค่า / การตั้งค่าตัวแปรสภาพแวดล้อมที่ไม่ถูกต้อง ฯลฯ ) เนื่องจากคำสั่งนั้นได้หรือไม่ ฉันไม่สามารถหาเอกสารเกี่ยวกับ-vสวิตช์ได้
161 command-line  bash 


3
คำสั่งเพื่อเพิ่มบรรทัดลงในไฟล์ข้อความโดยไม่ต้องเปิดเอดิเตอร์
สมมติว่าฉันมีบรรทัดที่ฉันต้องการเพิ่มลงในไฟล์โดยไม่ต้องเปิดโปรแกรมแก้ไข ฉันจะต่อท้ายบรรทัดนี้ได้อย่างไร alias list='ls -cl --group-directories-first' ไฟล์นี้ config.fish

4
วิธี grep สำหรับแท็บโดยไม่ต้องใช้แท็บตัวอักษรและทำไม \ t ไม่ทำงาน
เมื่อฉันค้นหาแท็บในไฟล์ที่มี (จ) grep ฉันจะใช้แท็บครอก ( ^v + <tab>) ฉันไม่สามารถใช้\tแทนแท็บในนิพจน์ทั่วไปได้ ด้วยเช่น sed การแสดงออกนี้ทำงานได้ดีมาก ดังนั้นจึงมีความเป็นไปได้ที่จะใช้การทดแทน<tab>ที่ไม่ได้มาจากที่\tใด

6
ค้นหาประวัติทุบตี + ลูกศรขึ้นบางส่วน
ฉันค้นหาแล้ว แต่ไม่พบสิ่งใดในสิ่งนี้ ฉันกำลังมองหาฟังก์ชั่นในการทุบตีโดยใช้สถานี ย้อนกลับไปเมื่อฉันมีผู้ใช้ในระบบเดเบียนและเพื่อนตั้งค่าฉันด้วยคุณสมบัติการค้นหาประวัติที่สะดวกสบาย (ฉันเชื่อว่าฉันใช้ tcsh แล้ว) ซึ่งฉันจะพิมพ์จุดเริ่มต้นของคำสั่งก่อนหน้ากดลูกศรขึ้น และมันจะทำการค้นหาตามสตริงบางส่วน เช่นถ้าประวัติของฉันคือ: ./script.pl ./script.pl arg1 cat output cat output | grep yada และฉันพิมพ์และกดปุ่มลูกศรขึ้นก็จะแสดงให้ฉัน:. ./script.pl arg1กดอีกครั้งและมันจะแสดง./script.plฯลฯ มากเหมือนมันจะดำเนินการgrepใน. bash_history มีวิธีรับฟังก์ชั่นนี้หรือไม่?

4
ฉันสามารถสร้างตัวพิมพ์เล็กและตัวพิมพ์ใหญ่แบบอัตโนมัติในแท็บได้หรือไม่
เทอร์มินัลของอูบุนตูใช้การเติมข้อความอัตโนมัติให้ตรงตามตัวพิมพ์ใหญ่ - เล็กอย่างที่ฉันคิดว่าน่าจะเป็น Linux แต่ฉันคิดว่ามันจะสะดวกกว่าถ้าจะใช้ตัวพิมพ์เล็กและตัวพิมพ์เล็กแทนเพื่อช่วยให้คุณไม่ต้องถูกต้องในขณะที่เริ่มต้นชื่อและอาจจะคุ้มค่ากับผลบวกปลอมเพิ่มเติม เป็นไปได้ไหมที่จะเปลี่ยนพฤติกรรมนี้

10
ย้ายจาก bash เป็น zsh [ปิด]
ฉันกำลังพิจารณาที่จะย้ายจากทุบตีไปยัง zsh เพราะฉันมักเจอข้อความยกย่อง zsh ฉันเป็นผู้ใช้บรรทัดคำสั่งที่มีประสบการณ์และฉันคิดว่าพื้นฐานนั้นเหมือนกันมากดังนั้นฉันจึงมองหาคำแนะนำเพื่อให้ได้ประโยชน์จากการเคลื่อนไหวและ gotchas ใด ๆ ที่ต้องระวัง โปรดให้คำแนะนำหนึ่งข้อต่อหนึ่งคำตอบ ฉันกำลังมองหาชิ้นที่มีขนาดพอดีคำซึ่งฉันสามารถกลับมาและรวมข้อมูลพิเศษเข้ากับการใช้งานเชลล์ของฉันได้อย่างมั่นคงแทนที่จะพยายามเรียนรู้ทุกอย่างในครั้งเดียว
143 bash  command-line  zsh 

8
ทำซ้ำคำสั่งทุกช่วงเวลา x ในเทอร์มินัลหรือไม่?
ฉันจะทำซ้ำคำสั่งทุกช่วงเวลาเพื่อที่จะให้ฉันเรียกใช้คำสั่งสำหรับการตรวจสอบ หรือตรวจสอบ ไดเรกทอรี? ไม่จำเป็นต้องใช้สคริปต์ฉันต้องการเพียงคำสั่งง่ายๆที่จะดำเนินการใน terminal

5
ช่องโหว่ bash CVE-2014-6271 คืออะไร (Shellshock) และฉันจะแก้ไขได้อย่างไร
เมื่อเร็ว ๆ นี้มีข่าวว่า "CVE-2014-6271" (ดูUSN-2362-1 ) ซึ่งเป็นช่องโหว่ใน Bash ฉันจะรู้ได้อย่างไรว่าฉันได้รับผลกระทบจากสิ่งนี้ฉันจะแก้ไขได้อย่างไรและทำไมฉันถึงต้องแคร์? สิ่งนี้ได้รับการออกแบบเป็นคำตอบที่ยอมรับได้สำหรับช่องโหว่นี้เนื่องจากขอบเขตและความรุนแรง

6
วิธีการแก้“ ปฏิเสธสิทธิ์” เมื่อใช้ sudo ด้วยการเปลี่ยนเส้นทางใน Bash
เมื่อใช้ sudo เพื่ออนุญาตให้แก้ไขไฟล์ฉันได้รับ 'สิทธิ์ถูกปฏิเสธ' เป็นประจำ ตัวอย่างเช่นเมาส์ของฉันสั่นเทาและซบเซาดังนั้นฉันต้องการปิดการใช้งานการลงคะแนน: sudo echo "options drm_kms_helper poll=N">/etc/modprobe.d/local.conf ฉันขอรหัสผ่านจากนั้นรับ: bash: /etc/modprobe.d/local.conf: Permission denied ดังนั้นฉันจึงพยายามเปลี่ยนแปลงชั่วคราวเพื่อปิดใช้งานการลงคะแนนเลือกตั้งโดยใช้: sudo echo N> /sys/module/drm_kms_helper/parameters/poll แต่ระบบตอบกลับด้วย: bash: /sys/module/drm_kms_helper/parameters/poll: Permission denied ความคิดใด ๆ
137 command-line  bash  sudo 

4
สคริปต์ BASH เพื่อตั้งค่าตัวแปรสภาพแวดล้อมไม่ทำงาน
ฉันได้เขียนสคริปต์ต่อไปนี้เพื่อตั้งค่าตัวแปรสภาพแวดล้อมบางอย่างเมื่อจำเป็น #!/bin/sh export BASE=/home/develop/trees echo $BASE export PATH=$PATH:$BASE echo $PATH ด้านล่างคำสั่งและผลลัพธ์ที่ฉันเห็นบนเทอร์มินัลของฉัน: สคริปต์ทำงาน แต่ตัวแปรไม่ได้ถูกตั้งค่าในตอนท้าย ~$: ./script.sh /home/develop/trees /bin:......:/home/develop/trees ~$: echo $BASE ~$: เกิดอะไรขึ้น ขอบคุณล่วงหน้า. มีร์โก

9
การรันโปรแกรมในพื้นหลังจากเทอร์มินัล
ฉันจะรันโปรแกรมในพื้นหลังของเชลล์ด้วยความสามารถในการปิดเชลล์ในขณะที่ปล่อยให้โปรแกรมทำงานอยู่ได้อย่างไร ให้บอกว่า UI ของฉันมีปัญหาหรือด้วยเหตุผลบางอย่างฉันต้องบูตโปรแกรมจากหน้าต่างเทอร์มินัลพูดnm-applet: nm-applet เมื่อเริ่มต้นมันจะอยู่ด้านหน้าของหน้าต่างเทอร์มินัล มีวิธีง่าย ๆ ในการรันโปรแกรมในพื้นหลังโดยไม่จำเป็นต้องเปิดเครื่องเทอร์มินัลหรือมีเครื่องเทอร์มินัลทั้งหมดหรือไม่? ในบันทึกย่อนั้นฉันหาวิธีเรียกใช้โปรแกรมจากเทอร์มินัลและอนุญาตให้มีอินพุตอื่นโดยต่อท้ายเครื่องหมายแอมเปอร์แซนด์ ( &) เข้ากับคำสั่งดังนี้: nm-applet & แต่สิ่งนี้ไม่ได้ใช้งานมากนักเนื่องจากกระบวนการใด ๆ ที่เริ่มต้นในเทอร์มินัลถูกฆ่าเมื่อเทอร์มินัลถูกปิด

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