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

.bash_profile เป็นหนึ่งในสคริปต์ที่เชลล์ Bash อ่านและดำเนินการเมื่อเริ่มต้นเป็นเชลล์ล็อกอินแบบโต้ตอบ



5
จะหาไฟล์. bashrc ได้ที่ไหนใน Mac OS X Snow Leopard และ Lion
ฉันต้องการติดตั้ง rvm บนเครื่อง Snow Leopard ของฉัน มันบอกว่าฉันต้องเพิ่มบรรทัดใน.bashrcไฟล์ของฉัน(ฉันใช้ทุบตี) แต่.bashrcไฟล์ของฉันอยู่ที่ไหน?

6
โปรไฟล์ MinGW Bash
ฉันใช้MinGWบน Windows 7 ฉันมี.bashrcนามแฝงอยู่ด้วย ไฟล์อยู่ในโฟลเดอร์บ้านของฉันซึ่งเป็นตำแหน่งที่ MinGW เริ่มฉันดังนั้นจึงเชื่อว่าโฟลเดอร์นั้นเป็นโฟลเดอร์บ้านของฉัน มันไม่ได้โหลดเนื้อหาของโฟลเดอร์โดยอัตโนมัติ ฉันต้องเรียกใช้bashคำสั่งเพื่อให้นามแฝงทำงานได้ .bash_profileฉันได้พยายามเปลี่ยนชื่อมัน สิ่งนี้ทำให้สิ่งเลวร้ายลงเนื่องจากไม่โหลดอัตโนมัติและไม่โหลดเมื่อฉันทำงานbashด้วยตนเอง ฉันจะแก้ไขปัญหานี้ได้อย่างไร

3
ฉันจะแก้ไขข้อผิดพลาด Broken Pipe ได้อย่างไร
ฉันเพิ่งติดตั้ง RVM ใหม่ (ทำตามคำแนะนำที่http://rvm.io ) หลังจากติดตั้ง Ubuntu 12.10 ใหม่เมื่อฉันได้รับ SSD Drive ตอนนี้เมื่อฉันพิมพ์: type rvm | head -1 ฉันได้รับข้อผิดพลาดต่อไปนี้: rvm is a function -bash: type: write error: Broken pipe แต่ถ้าฉันทำซ้ำคำสั่งทันทีฉันก็จะได้รับ: rvm is a function และดูเหมือนว่าทุกอย่างก็โอเค เกิดอะไรขึ้น? ฉันจะแก้ไขได้อย่างไร มันไม่ได้เกิดขึ้นเสมอไป มันดูเหมือนจะเป็นระยะ ๆ ฉันพยายามที่จะหารูปแบบบางอย่าง แต่ยังไม่ได้
36 bash  ruby  .bash-profile  rvm 

3
ตัวแปรสภาวะแวดล้อมใน bash_profile หรือ bashrc?
ฉันพบคำถามนี้ [บล็อก]: ความแตกต่างระหว่าง. bashrc และ. bash_profileมีประโยชน์มาก แต่หลังจากเห็นคำตอบที่ได้รับการโหวตมากที่สุด (ดีมากโดยวิธีการ) ฉันมีคำถามเพิ่มเติม ในตอนท้ายของการโหวตมากที่สุดคำตอบที่ถูกต้องฉันเห็นข้อความดังต่อไปนี้: โปรดทราบว่าคุณอาจเห็นที่นี่และมีคำแนะนำให้ใส่คำจำกัดความตัวแปรสภาพแวดล้อมใน ~ / .bashrc หรือเปิดใช้เชลล์การเข้าสู่ระบบในเทอร์มินัลเสมอ ทั้งคู่เป็นความคิดที่ไม่ดี ทำไมมันเป็นความคิดที่ไม่ดี (ฉันไม่ได้พยายามจะต่อสู้ฉันแค่อยากจะเข้าใจ)? หากฉันต้องการตั้งค่าตัวแปรสภาพแวดล้อมและเพิ่มลงใน PATH (เช่น JAVA_HOME) ซึ่งเป็นสถานที่ที่ดีที่สุดในการใส่รายการส่งออก ใน~ / .bash_profileหรือ~ / .bashrc ? หากคำตอบของคำถามหมายเลข 2 คือ~ / .bash_profile แสดงว่าฉันมีคำถามอีกสองข้อ: 3.1 สิ่งที่คุณจะวางภายใต้~ / .bashrc ? นามแฝงเท่านั้น 3.2 ในเชลล์ที่ไม่ใช่การเข้าสู่ระบบฉันเชื่อว่า~ / .bash_profileไม่ได้ถูก "หยิบขึ้นมา" หากการส่งออกรายการ JAVA_HOME อยู่ใน bash_profile …

3
เป็นไปได้หรือไม่ที่จะแทนที่คำสั่งที่สร้างขึ้นในคำสั่ง“ cd”?
ทุกครั้งที่ฉัน 'cd' ไปยังไดเรกทอรีอื่นบนเครื่องของฉัน (ในกรณีนี้ใช้ Mac OS X 10.6.7) ผ่านทางบรรทัดคำสั่ง (ซึ่งเป็น bash) ฉันพิมพ์ 'ls' ทันทีเพื่อรับรายการเนื้อหา ในไดเรกทอรีนั้น ฉันกำลังพยายามหาวิธีแทนที่ 'cd' เพื่อให้มันเปลี่ยนไปยังไดเรกทอรีที่ร้องขอจากนั้นให้รายการในภาพเดียว ฉันสามารถรับฟังก์ชั่นพื้นฐานที่ฉันกำลังมองหาทำงานโดยเพิ่มบรรทัดต่อไปนี้ลงใน ~ / .bash_profile ของฉัน function cl() { cd "$@"; ls -l; } ทำงานได้ตามที่คาดไว้ เปลี่ยนเป็นไดเร็กทอรีที่ร้องขอจากนั้นแสดงเนื้อหาให้ฉัน ที่ฉันพบปัญหาพยายามแทนที่ "cd" ตัวเองแทนที่จะสร้างคำสั่ง "cl" ใหม่ สิ่งต่อไปนี้ไม่ได้ทำงาน ##### Attempt 1 ##### # Hangs the command line function cd() …

5
~ / .profile ไม่โหลดเมื่อใช้ SSH (Ubuntu)
แก้ไขเพื่อสะท้อนปัญหาที่ฉันต้องการแก้ไข: ฉันต้องตั้งค่าสภาพแวดล้อมทับทิมของฉันเพื่อให้สามารถปรับใช้ผ่าน Capistrano export PATH=$HOME/.rbenv/bin:$PATH eval "$(rbenv init -)" ฉันใส่สิ่งเหล่านี้ใน ~ deploy / .profile แต่เมื่อฉันใส่เข้าไปพวกเขาจะไม่ถูกเรียกใช้ ไอเดีย? ฉันใช้ Ubuntu 12.04 คำถามเดิมคือ: เมื่อฉัน ssh ไปยังบัญชีอื่นที่ localhost มันจะไม่โหลด. profile ของฉัน ฉันจะบังคับให้ ssh โหลดได้อย่างไร ฉันใช้ Ubuntu 12.04

2
Bash ไม่ได้โหลด '.profile' ในเซสชันใหม่บน Linux
ฉันกำลังตั้งค่าเครื่อง Linux ใหม่ที่ฉันได้รับจากแผนกไอทีของเราและสังเกตเห็น.profileว่าไม่ได้โหลดเมื่อฉันเริ่มเซสชันเทอร์มินัลใหม่ เปลือกปัจจุบันคือทุบตีแต่ผมเปลี่ยนจากค่าเริ่มต้นการดวลจุดโทษมันมาพร้อมกับ ฉันจะทำให้โหลด.profileเมื่อเริ่มต้นได้อย่างไร ฉันจะเข้าถึงเปลือกผ่านSSHssh myusername@remotemachine : ฉันมีสิทธิ์ของผู้ดูแลระบบ

6
วิธีรีเซ็ต Bash บน Mac OSX, .bash_profile เสียหายและ bash ไม่สามารถใช้งานได้อีกต่อไป
ฉันใช้ MacBook Pro กำลังใช้งาน Mountain Lion เวอร์ชันล่าสุด ฉันต้องการความช่วยเหลือจริงๆฉันได้จัดการวิธีการสร้างความเสียหาย. bash_profile ของฉัน (ฉันคิดว่า) ดังนั้นทุกครั้งที่ฉันเปิดเครื่อง -bash: export: `/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/go/bin': not a valid identifier -bash: export: `/Users/rob/Applications/sbt/bin:': not a valid identifier env: bash: No such file or directory env: bash: No such file or directory env: bash: No such file or directory env: bash: No …

1
การเปิดใช้งานสีในเปลือกโต้ตอบหลามบน OS / X
ฉันเพิ่งแก้ไข. bash_profile เพื่อให้มีสีใน iTerm และ Terminal ตอนนี้ฉันต้องการเปิดใช้งานการเน้นไวยากรณ์สำหรับ Python interactive shell, IDLE-style ทำอย่างไร

5
วิธีดำเนินการเชลล์สคริปต์โดยอัตโนมัติเมื่อเข้าสู่ระบบ Ubuntu
ฉันจะรับสคริปต์ให้ดำเนินการโดยอัตโนมัติเมื่อฉันเข้าสู่ระบบได้อย่างไร ไม่ใช่เมื่อเครื่องเริ่มทำงานและไม่ใช่สำหรับผู้ใช้ทั้งหมด แต่เฉพาะเมื่อฉัน (หรือผู้ใช้ที่มีสคริปต์) เข้าสู่ระบบผ่าน GNOME UI จากการอ่านที่อื่นฉันคิดว่ามันอยู่.bash_profileในไดเรกทอรีบ้านของฉัน แต่สำหรับฉันมันไม่มีผลกระทบ เมื่อฉันรันมันด้วยตนเองในหน้าต่างเทอร์มินัลโดยการพิมพ์~/.bash_profileมันจะทำงานได้ แต่มันจะไม่ทำงานโดยอัตโนมัติเมื่อฉันเข้าสู่ระบบ ฉันใช้ Ubuntu 11.04 ได้รับอนุญาตจากไฟล์บน .bash_profile -rwx------ของฉันคือ ไม่มี. bash_profile ในโฮมไดเร็กตอรี่ของฉันก่อนที่ฉันจะสร้างมันขึ้นมาวันนี้ ฉันดูเหมือนจะจำ Linux เวอร์ชันเก่าที่มี.profileไฟล์สำหรับผู้ใช้แต่ละคน แต่นั่นไม่ได้ผล เป็นอย่างไรบ้าง? ฉันต้องกำหนดค่าอย่างอื่นเพื่อให้. bash_profile ทำงานได้หรือไม่ หรือสคริปต์เข้าสู่ระบบต่อผู้ใช้จำเป็นต้องอยู่ในไฟล์อื่นหรือไม่?

4
`>> 'หมายถึงอะไรในคำสั่งเทอร์มินัล
ฉันเจอคำสั่งที่ได้รับด้านล่าง - $ echo 'eval "$(jenv init -)"' >> ~/.bash_profile จากสิ่งที่ฉันเดาได้มันอาจจะใช้สำหรับการยอมรับการเปลี่ยนแปลงใน. bash_profile แต่มันจะใช้อะไรกันแน่

2
Mac OSX: ไม่สามารถใส่สีสัญลักษณ์ที่ขาดได้
บนเครื่อง linux ของฉันคุณสามารถบอกได้ว่า symlink แบบสมบูรณ์จากอันที่เสียหายเพราะอันที่แตกเป็นสีแดง ฉันพยายามตั้งค่านี้ใน mac ของฉันโดยเพิ่มการกำหนดค่าบางอย่างให้กับ PSCOLORS ใน. bash_profile ของฉัน แต่จนถึงตอนนี้ก็ไม่มีอะไรทำงานได้ ฉันได้รับการระบายสีเพื่อบอกไดเรกทอรีไดเรกทอรีไฟล์ปฏิบัติการและ symlink อย่างไรก็ตาม symlink ที่ใช้งานไม่ได้มีสีที่แตกต่างจาก symlink แบบไม่บุบสลาย การค้นหาใน google ยังไม่ได้แสดงผลลัพธ์ที่มีแนวโน้ม ไอเดีย? เคล็ดลับ?

3
`ssh <host>` เป็นเชลล์การเข้าสู่ระบบ แต่ `ssh <host> <command>` ไม่ใช่?
ฉันสังเกตว่าเมื่อฉันเรียกใช้คำสั่งโดยตรงบนโฮสต์ SSH โดยใช้ssh &lt;host&gt; &lt;command&gt;ไวยากรณ์ฉันเห็นผลลัพธ์ของ.bashrcแต่ไม่ใช่ผลลัพธ์ของ.bash_profile(หรือ.profile) ตัวอย่างเช่นถ้าฉันวางคำสั่งต่อไปนี้ที่ด้านบนของไฟล์ทั้งสอง echo ${BASH_SOURCE[0]} และแหล่งที่มาด้วยตนเอง.bash_profile(ที่มา.bashrcในการเปิด) ฉันจะเห็น $ . .bash_profile .bash_profile .bashrc นี่เป็นผลลัพธ์เดียวกันกับที่ฉันเห็นว่าฉันลงชื่อเข้าใช้คอมพิวเตอร์เครื่องนี้จากระยะไกลผ่าน SSH โดยใช้ssh &lt;host&gt;รูปแบบของคำสั่ง (และถ้าฉันเก็บไว้ที่.bash_profileอื่นชั่วคราวบรรทัดเหล่านี้จะไม่ถูกสะท้อนเลย) อย่างไรก็ตามถ้าฉันรันคำสั่งบนเครื่องรีโมตโดยตรงด้วยssh &lt;host&gt; &lt;command&gt;รูปแบบของsshเอาต์พุตจะมีลักษณะดังนี้: $ ssh &lt;host&gt; echo foo /home/rlue/.bashrc foo ความเข้าใจของฉันอยู่ที่ความแตกต่างระหว่าง.bash_profileและ.bashrcเป็นว่าอดีตเป็นเปลือกหอยเข้าสู่ระบบในขณะที่หลังสำหรับการโต้ตอบและเปลือกหอยที่ไม่เข้าสู่ระบบ ฉันได้ข้อสรุปดังต่อไปนี้: ssh &lt;host&gt;แหล่งที่มาเท่านั้น.bash_profileในขณะที่ ssh &lt;host&gt; &lt;command&gt;แหล่งข้อมูลเท่านั้น.bashrcซึ่งหมายถึง อดีตเป็นเปลือกเข้าสู่ระบบและหลังไม่ได้ ข้อสรุปเหล่านี้ถูกต้องหรือไม่ เหตุใดจึงssh &lt;host&gt; &lt;command&gt;ถือว่าเป็นเชลล์แบบโต้ตอบและไม่ใช่การเข้าสู่ระบบ SSH ยังไม่ได้เข้าสู่เครื่องระยะไกลเพื่อดำเนินการคำสั่งหรือไม่

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