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

.bashrc เป็นไฟล์การกำหนดค่าเปลือก Bash สำหรับเซสชันล็อกอินเทอร์มินัลของผู้ใช้

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

9
. bashrc อยู่ที่ไหน
ฉันรู้สึกโง่ที่ถาม แต่ฉันไม่สามารถหาคำตอบได้ทุกที่ ฉันกำลังพยายามทำตามคำแนะนำเหล่านี้เพื่อแก้ไข bash prompt ของฉัน แต่ไม่มี.bashrcอยู่ในไดเรกทอรีผู้ใช้ของฉัน ( ~/.bashrc) หรือในโฮมไดเร็กตอรี่ของฉันหรือในไดเรกทอรีระบบไฟล์หลัก ไม่มี.bashrcใน/etc/(มีbash.bashrcแต่) ฉันจะสร้าง.bashrcไฟล์ในผู้ใช้หรือโฮมไดเร็กตอรี่ได้หรือไม่? มีชุดคำสั่งที่ดีกว่าและล่าสุดกว่านี้สำหรับการแก้ไข bash prompt หรือไม่?

3
การเปลี่ยนสีสำหรับผู้ใช้โฮสต์ข้อมูลไดเรกทอรีในพรอมต์คำสั่งเทอร์มินัล
เป็นไปได้หรือไม่ที่จะเปลี่ยนสีในพรอมต์คำสั่งสำหรับuser@computerรวมถึงไดเรกทอรีปัจจุบันและส่วนคำสั่งของการแสดงพรอมต์? ฉันเห็นบางสิ่งเช่นนี้แล้วโดยผู้ใช้ OSX แต่ฉันไม่ทราบวิธีการทำสิ่งเดียวกันในเทอร์มินัล gnome (ฉันสามารถเปลี่ยนสีพื้นหน้าและสีพื้นหลังได้เท่านั้น) มันจะมีประโยชน์มากเมื่อพยายามรวบรวมโปรแกรมที่มีข้อผิดพลาดเนื่องจากข้อความที่ไม่ได้จัดรูปแบบมานานทำให้ยากที่จะแยกแยะว่าบรรทัดใดเป็นคำสั่งและเอาต์พุต


6
ทำไม“ (ฐาน)” ปรากฏหน้าพรอมต์เทอร์มินัลของฉัน
ตามชื่อฉันสงสัยว่าทำไมฉันถึง(base)อยู่ทางด้านซ้ายของหน้าจอเทอร์มินัลแจ้ง ถ้าฉันวิ่งsource ~/.profileใน terminal มันหายไป ถ้าฉันปิดเทอร์มินัลนั้นแล้วเปิดเทอร์มินัลใหม่(base)อีกครั้งจะมีอีกครั้ง ฉันอยากรู้ว่ามันคืออะไรขอบคุณ ตรวจสอบในภาพ: นี่คือเนื้อหาของฉัน.profile(ไม่รวมสิ่ง $ path มาตรฐานและของส่วนตัวอื่น ๆ ): # if running bash if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi นี่คือเนื้อหาของ. bashrc ของฉัน # If not running interactively, don't do …

4
“ $ {debian_chroot: + ($ debian_chroot)}” ทำอะไรในหน้าจอพร้อมท์เทอร์มินัลของฉัน
ในการกำหนดพรอมต์เทอร์มินัลของฉันใน.bashrcไฟล์ของฉันฉันมีโค้ดบางส่วน: ${debian_chroot:+($debian_chroot)} สิ่งนี้ทำอะไรและฉันต้องการมันหรือไม่
86 bash  debian  bashrc  chroot  prompt 

6
.bashrc ไม่ทำงานเมื่อเปิดเทอร์มินัลใหม่
รหัสใน. bashrc ไม่ทำงานเมื่อฉันเปิดหน้าต่างเทอร์มินัลใหม่ใน Ubuntu 12.04 ฉันสังเกตเห็นสิ่งนี้เมื่อสร้างไฟล์. bash_aliases นามแฝงไม่ปรากฏขึ้นเมื่อฉันเปิดเทอร์มินัลใหม่ อย่างไรก็ตามเมื่อฉันพิมพ์source .bashrcนามแฝงก็ปรากฏขึ้น .bashrc ควรทำงานทุกครั้งที่ฉันเปิดหน้าต่างเทอร์มินัลใหม่ใช่ไหม ฉันจะทำให้สิ่งนี้เกิดขึ้นได้อย่างไร
84 bashrc 

1
ทำไม / etc / profile ไม่ถูกเรียกใช้สำหรับเชลล์ที่ไม่ใช่การล็อกอิน?
ล็อกอินและเชลล์ที่ไม่ได้ล็อกอินกำหนด: su - $USER # will give you a login shell bash # will give you a non-login shell / etc / profile ไม่ถูกเรียกใช้สำหรับเชลล์ที่ไม่ใช่การเข้าสู่ระบบเช่นเมื่อคุณเริ่ม konsole (kde) / etc / profile ถูกเรียกใช้สำหรับเชลล์ล็อกอินเท่านั้น ทำไมถึงเป็นอย่างนั้น? กรุณาอธิบายเพราะฉันชอบที่จะเข้าใจเหตุผลของเรื่องนี้

5
ไม่สามารถแหล่ง. bashrc ได้สำเร็จจากเชลล์สคริปต์
โดยปกติเราสามารถซอร์ส~/.bashrcไฟล์โดยใช้คำสั่งนี้ source ~/.bashrc แต่ถ้าฉันเขียนสิ่งนี้ในเชลล์สคริปต์และดำเนินการมันจะไม่มีอะไรเกิดขึ้น ทำไม? มีวิธีการทำเช่นนี้? สคริปต์ของฉัน: #!/bin/bash chmod a+x ~/.bashrc source ~/.bashrc นอกจากนี้ยังพยายาม.(dot) sourceแทน ผลลัพธ์เดียวกัน
51 bash  scripts  bashrc 

5
ความแตกต่างระหว่างไฟล์ bash.bashrc และ / etc / environment
จนถึงวันที่ฉันเคยตั้งค่าตัวแปรสภาพแวดล้อมของฉันในbash.bashrcไฟล์ เมื่อเร็ว ๆ นี้ฉันถูกบอกให้ใช้/etc/environmentไฟล์ ทั้งสองทำงานได้ดี ดังนั้นความแตกต่างระหว่างพวกเขาคืออะไร? ฉัน googled นี้และฉันพบว่า "bashrc ใช้สำหรับผู้ใช้และสภาพแวดล้อมระบบโดยเฉพาะ" ระบบมีความหมายที่นี่อย่างไร /etc/bash.bashrcยังใช้การเปลี่ยนแปลงของระบบอย่างกว้างขวางฉันเดา ถูกต้องฉันถ้าฉันผิด ความช่วยเหลือใด ๆ จะได้รับการชื่นชม ..

2
ลำดับของสคริปต์ที่มาเมื่อเข้าสู่ระบบ
~/.bash_profileผมอยากที่จะมีสมาธิทั้งหมดเข้าสู่ระบบการตั้งค่าของฉัน มี~/.bashrcโดยมีค่าเริ่มต้น ~/.bash_profileแต่ฉันแทนที่มันด้วย อย่างไรก็ตามเมื่อฉันเข้าสู่ระบบบางสิ่งก่อนที่ฉัน~/.bash_profileจะได้รับที่มาและแสดงต่อไปนี้: Linux ubnt10-dev1 2.6.32-38-server #83-Ubuntu SMP Wed Jan 4 11:26:59 UTC 2012 x86_64 GNU/Linux Ubuntu 10.04.4 LTS Welcome to the Ubuntu Server! * Documentation: http://www.ubuntu.com/server/doc System information as of Fri May 9 12:17:39 EDT 2014 System load: 0.01 Processes: 74 Usage of /: 5.5% of 18.58GB Users …
41 bash  login  bashrc  .profile 

5
ระบุ JDK สำหรับ tomcat7
ฉันได้ติดตั้งtomcat7(โดยใช้apt-get install) และเมื่อใดก็ตามที่ฉันต้องการที่จะเริ่มtomcat7มันพูดว่า: * no JDK found - please set JAVA_HOME ฉันได้ตั้งค่าJAVA_HOMEของฉันbash.bashrcและใน~/.bashrcและเมื่อฉันออกecho $JAVA_HOMEฉันเห็นชัดเจนว่าตัวแปรนี้ชี้ไปที่โฟลเดอร์รากของ jdk ของฉัน มีใครช่วยฉันด้วยได้ไหม ขอบคุณ
41 java  bashrc  jdk  tomcat 

3
ฟังก์ชั่นเขียนในหนึ่งบรรทัดเป็น ~ / .bashrc
ทำไมเมื่อฉันพยายามเขียนฟังก์ชั่นในหนึ่งบรรทัดเป็น.bashrcไฟล์ list(){ ls -a } ฉันได้รับข้อผิดพลาด? bash: /home/kasiya/.bashrc: line num: syntax error: unexpected end of file แต่เมื่อฉันเขียนมันในหลายบรรทัดก็โอเค? list(){ ls -a }
40 bashrc 

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