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

1
ค้นหาว่าสคริปต์ใดที่ถูกเรียกใช้โดยการทุบตีเมื่อเริ่มต้น
หลังจากเริ่มต้น bash terminal ฉันสังเกตเห็นว่าตัวแปร PATH มีรายการที่ซ้ำกัน ขั้วของฉันเริ่มต้นเปลือกเข้าสู่ระบบเพื่อให้~/.bash_profileมีที่มาตามด้วยและ~/.profile ~/.bashrcใน~/.profileฉันจะสร้างรายการเส้นทางที่ซ้ำกัน นี่คือลำดับที่ไฟล์ที่ควรจะมีแหล่งที่มาจะถูกแหล่งที่มา: Sourced /etc/profile Sourced /etc/bash.bashrc Sourced .bash_profile Sourced .profile Sourced .bashrc ก่อนที่ทุกคนจะทำเครื่องหมายสิ่งนี้ว่าเป็น "สำเนาของตัวแปร PATH ที่มีรายการซ้ำ" โปรดอ่านต่อไป ตอนแรกฉันคิดว่าสิ่งนี้เกี่ยวข้องกับ~/.profileการจัดหาแหล่งข้อมูลสองครั้งดังนั้นฉันจึงเขียนไฟล์ลงในไฟล์บันทึกเมื่อใดก็ตามที่มีแหล่งที่มาและน่าประหลาดใจที่มีการบันทึกเพียงหนึ่งรายการ ยิ่งน่าแปลกใจคือความจริงที่ว่าเมื่อผมแสดงความคิดเห็นออกรายการที่อยู่ใน~/.profileรายการยังคงปรากฏในPATHตัวแปร สิ่งนี้ทำให้ฉันมีข้อสรุปสามประการซึ่งหนึ่งในนั้นถูกตัดออกอย่างรวดเร็ว: Bash ละเว้นความคิดเห็น bash ที่ถูกต้องและยังคงดำเนินการรหัสความคิดเห็น มีสคริปต์ที่อ่าน~/.profileและไม่สนใจรหัสใด ๆ ที่พิมพ์เอาต์พุต (ตัวอย่างเช่นล็อกไฟล์) มีอีกฉบับหนึ่งของฉัน~/.profileที่กำลังถูกหาที่อื่น อันแรกฉันสรุปได้อย่างรวดเร็วว่าไม่ใช่เพราะการทดสอบที่รวดเร็ว ตัวเลือกที่สองและสามเป็นสิ่งที่ฉันต้องการความช่วยเหลือ ฉันจะรวบรวมบันทึกสคริปต์ที่ดำเนินการได้อย่างไรเมื่อเทอร์มินัลเริ่มทำงาน ฉันใช้echoในไฟล์ที่ฉันตรวจสอบเพื่อทราบว่าไฟล์เหล่านั้นมาจากการทุบตีหรือไม่ แต่ฉันต้องหาวิธีการสรุปที่ติดตามการดำเนินการถึงจุดเมื่อเทอร์มินัลพร้อมให้ฉันเริ่มพิมพ์มัน ถ้าข้างต้นเป็นไปไม่ได้แล้วทุกคนสามารถแนะนำที่อื่นฉันสามารถมองเพื่อดูว่าสคริปต์จะถูกเรียกใช้ การอ้างอิงในอนาคต นี่คือสคริปต์ที่ฉันใช้ในการเพิ่มเส้นทางของฉัน: function add_to_path() { for path in …
15 bash  profile 

2
โปรไฟล์ gnome-terminal เก็บอยู่ที่ไหนในการแจกจ่าย Linux?
ฉันใช้แล้ว (Red Hat, Ubuntu, CentOS, อื่น ๆ ) การแจกแจงเหล่านี้ใช้เทอร์มินัล Gnome และจัดหาวิธีที่ยืดหยุ่นในการตั้งค่าโปรไฟล์เทอร์มินัลที่แตกต่างกันผ่านเมนูแบบเลื่อนลงที่อยู่ในหน้าต่างเทอร์มินัลเหนือคำสั่งที่ป้อน โปรไฟล์เหล่านี้อนุญาตให้ทำการเปลี่ยนแปลงคุณสมบัติแบบอักษรและสีของไฟล์ต่าง ๆ ฯลฯ โปรไฟล์ที่แตกต่างกันเหล่านี้อยู่ที่ไหนสำหรับเครื่องเทอร์มินัลที่จัดเก็บ

4
ไฟล์. bashrc อยู่ที่ไหนใน Linux?
ฉันไม่พบ. bash_login และ. bash_profile ของฉัน root@linux:~# locate .bash* /etc/bash.bashrc /etc/skel/.bashrc /etc/skel/.bashrc.original /home/noroot/.bashrc /home/noroot/.bashrc.original /root/.bash_history /root/.bashrc /usr/share/base-files/dot.bashrc /usr/share/doc/adduser/examples/adduser.local.conf.examples/bash.bashrc /usr/share/doc/adduser/examples/adduser.local.conf.examples/skel/dot.bashrc /usr/share/kali-defaults/.bashrc root@linux:~# มีไฟล์. bashrc และ. bash_profile เพียงไฟล์เดียวสำหรับผู้ใช้ทุกคนหรือไม่ และ. bashrc และ. bash_profile มักจะพบในไดเรกทอรี / home / "ชื่อผู้ใช้" หรือไม่?

2
ตั้งค่าตัวแปรสภาพแวดล้อมสำหรับ gnome บน wayland และ bash บนเทอร์มินัลเสมือน (หรือ ssh)
Gnome 3.22 ใช้ Wayland เป็นค่าเริ่มต้น Gnome บน wayland ไม่ได้อ่าน~/.profile(หรือ~/.bash_profileหรือ/etc/profile) ดูhttps://bugzilla.gnome.org/show_bug.cgi?id=736660 ฉันมีไฟล์เริ่มต้นของฉันตั้งค่าดังต่อไปนี้: .bash_profileไม่ทำอะไรเลยนอกจากแหล่ง.profileและ.bashrc .profileตั้งค่าตัวแปรสภาพแวดล้อมเช่นPATHและเท่านั้นLC_MESSAGES .bashrcชุดการตั้งค่าบางทุบตีที่เฉพาะเจาะจงและชื่อแทนและตัวแปรสภาพแวดล้อมสำหรับการใช้งานเช่นการและlessgrep ผลกระทบ (ก่อน wayland) มีดังต่อไปนี้: เมื่อฉันเข้าสู่ระบบกราฟิก.profileถูกอ่านและตัวแปรสภาพแวดล้อมเช่นPATHและLC_MESSAGESถูกตั้งค่า เมื่อฉันเปิด bash ภายในเทอร์มินัลอีมูเลเตอร์แล้ว.bashrcอ่าน เมื่อฉันเข้าสู่ระบบภายใต้ terminal เสมือนแล้ว.bash_profileได้อ่านซึ่งในการเปิดอ่านและ.profile.bashrc เมื่อฉันเข้าสู่ระบบโดยใช้ ssh พฤติกรรมนั้นคล้ายกับเทอร์มินัลเสมือน ในทุกกรณี.profileและ.bashrcถูกอ่านและสภาพแวดล้อมของฉันถูกตั้งค่า ดังนั้นตอนนี้ gnome 3.22 ใช้ Wayland และ Wayland .profileไม่ได้อ่าน ฉันจะตั้งค่าไฟล์เริ่มต้นได้อย่างไรเพื่อให้ฉันมีลักษณะพิเศษตามที่อธิบายไว้ข้างต้นอีกครั้ง โปรดทราบว่าฉันไม่ได้ยืนยันว่าอ่านไฟล์บางไฟล์ (ชอบ.profile) สิ่งที่ฉันต้องการคือการตั้งค่าสภาพแวดล้อมของฉันอย่างเหมาะสม นั่นหมายความว่าฉันต้องการเก็บการตั้งค่าเฉพาะของ bash ไว้ในไฟล์กำหนดค่าเริ่มต้น bash และการตั้งค่าอื่น ๆ ไปยังไฟล์เริ่มต้นอื่น ๆ นอกจากนี้ฉันไม่ต้องการคัดลอกการตั้งค่าไปยังไฟล์อื่น …

1
อะไรคือความแตกต่างระหว่าง. profile และ. bash_profile และทำไมฉันจึงไม่มีไฟล์. profile ในระบบของฉัน
ดังนั้นฉันค่อนข้างใหม่สำหรับ Linux และเพิ่งติดตั้ง Fedora 19 บนเน็ตบุ๊กของฉัน ฉันต้องการจะมีความเข้าใจที่ลึกซึ้งของลินุกซ์และ CLI ดังนั้นตอนนี้ผมอ่านเรียนรู้ Linux: วิธี ในแบบฝึกหัด 3 ผู้เขียนให้คำสั่งต่อไปนี้: ls -al แมว. โปรไฟล์ ฉันพยายามทำตามคำแนะนำเหล่านี้ แต่ไม่มีประโยชน์ ไม่มีไฟล์. profile ในไดเรกทอรีชื่อผู้ใช้ของฉันตามที่ฉันเห็นได้จาก ls -al จากสิ่งที่ฉันได้เรียนรู้ไฟล์. bash_profile และ. profile นั้นเหมือนกันทุกประการ ข้อแตกต่างเดียวที่ฉันได้ข้อสรุปจากการวิจัยของฉันคือ. bash_profile ได้รับการตรวจสอบก่อน สิ่งที่ฉันไม่เข้าใจคือเพราะเหตุใดจึงมีหลายไฟล์สำหรับฟังก์ชันเดียวกันใน Linux เหตุใดผู้เขียนจึงใช้. profile และไม่. bash_profile (ถ้าฉันเข้าใจอย่างถูกต้อง. profile จะไม่อ่านเมื่อระบบค้นหา. bash_profile ก่อน) และทำไมฉันถึงไม่มีไฟล์. profile บนระบบของฉัน
12 bash  profile 

2
จะเพิ่มพา ธ โฮมไดเร็กตอรี่ที่ Unix ถูกค้นพบได้อย่างไร?
ฉันติดตั้งnode.jsในตำแหน่งที่กำหนดเองและเพิ่มตำแหน่งลง$PATHใน.profileไฟล์ $ node --version v0.6.2 $ which node $ echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:~/Unix/homebrew/bin $ cat ~/.profile export PATH="$PATH:~/Unix/homebrew/bin" Node.js ทำงานได้ดี ปัญหามันไม่ได้อยู่ในรายการตามwhichคำสั่ง npmตอนนี้ฉันไม่สามารถติดตั้งได้ เพราะติดตั้งไม่สามารถหาสถานที่ตั้งของnpm node.jsฉันจะสร้างnodeไบนารีที่ค้นพบได้whichอย่างไร
12 path  profile  home  which 

3
$ HOME / bin dir ไม่ได้อยู่บน $ PATH
ในฉัน~/.profileฉันมีบล็อกสุดท้ายซึ่งควรโหลดส่วนบุคคลของฉันbin/ directoryเช่นนี้: # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi แต่ดูเหมือนจะไม่โหลด: echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games ทำไมสิ่งนี้ถึงไม่ทำงาน (เปลือกของฉันคือทุบตี) แก้ไขสำหรับ Tigger echo $0 => bash echo $HOME => /home/student whoami => student less /etc/*-release => PRETTY_NAME="Debian GNU/Linux 9 (stretch)" NAME="Debian …

4
.profile ไม่ได้มีที่มาใน Debian Wheezy LXDE
ฉันจะเพิ่ม$HOME/binไปจาก$PATH ~/.profileอย่างไรก็ตามดูเหมือนว่ามันไม่ได้มีที่มาในระหว่างการเข้าสู่ระบบ ผมใช้ผู้จัดการเข้าสู่ระบบ - ผมคิดว่าไม่lxdm startxฉันรู้เรื่องนี้ว่าสคริปต์ใดที่ถูกเรียกใช้งาน เพื่อแสดงให้เห็นดูว่าจะมีการเพิ่มหลังจากที่ฉันอย่างชัดเจนแหล่งที่มา$HOME/bin ~/.profileแต่มันไม่ควรจะได้รับมาในระหว่างการเข้าสู่ระบบแบบกราฟิก? sashoalm@aspire:~$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games sashoalm@aspire:~$ source ~/.profile sashoalm@aspire:~$ echo $PATH /home/sashoalm/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games sashoalm@aspire:~$
11 profile  lxde 

1
คุณตั้งค่าสภาพแวดล้อมสำหรับ es อย่างไร
ฉันได้เล่นกับesในสองสามวันที่ผ่านมาและมัน (เช่น rc) มีการเล่นโวหาร / คุณลักษณะที่จะเรียกใช้สคริปต์เริ่มต้นเท่านั้น ( .esrc) เมื่อเข้าสู่ระบบ วิธีปกติในการเรียกใช้รหัสในแต่ละเซสชันแบบโต้ตอบคือการใส่รหัสนั้นลงใน%promptฟังก์ชัน แน่นอนว่าไม่มี%promptฟังก์ชั่นหากes -lไม่เคยทำงาน ดังนั้นคำถาม: คุณจะตั้งค่าสภาพแวดล้อมการเข้าสู่ระบบอย่างไรเมื่อคุณเข้ามาผ่านทาง gdm หรือคล้ายกันซึ่งแหล่งที่มาเฉพาะ. profile (หรือ. xprofile, .xsession ฯลฯ ) สิ่งที่ดีที่สุดที่ฉันคิดไว้คือ: if [ -f "$HOME/.esrc" ]; then eval "`es -l <<-x sh <<<'export -p' x`" fi ซึ่งดูเหมือน ... น่ากลัว มีวิธีใดที่ดีกว่านี้?

5
sh ไฟล์เริ่มต้นผ่าน ssh
ฉันมีคำสั่งที่สำคัญบางอย่างที่ฉันต้องเรียกใช้ก่อนที่เชลล์ sh จะเริ่มทำงาน สิ่งนี้จำเป็นสำหรับการส่งคำสั่ง SSH ในคำสั่ง SSH ( ssh host somecommand) และโปรแกรมอื่น ๆ ที่เรียกใช้คำสั่ง ในฉัน.profileฉันมีสิ่งนี้: ihammerhands@wreckcreations:~> cat .profile #specific environment and startup programs export PS1="\u@wreckcreations:\w> " export PYTHONPATH=~/python/lib/python2.4/site-packages export PATH=$PATH:~/bin:~/python/bin อย่างไรก็ตามสิ่งนี้ล้มเหลว: W:\programming\wreckcreations-site\test-hg>ssh name@host echo $PATH Enter passphrase for key '/home/Owner/.ssh/id_rsa': /usr/local/bin:/bin:/usr/bin สังเกตเห็นตัวเลือก PATH ที่หายไป ชื่อที่เหมาะสมสำหรับโปรไฟล์ sh คืออะไร? หมายเหตุ: ฉันไม่สามารถเข้าถึงรูทและไม่ต้องการให้สิ่งนี้ใช้กับผู้ใช้รายอื่น มีวิธีอื่นในการทำเช่นนี้หรือไม่? …
10 bash  ssh  shell  profile 

1
/root/.bashrc และ /root/.profile มาจากไหนในระบบ Debian?
โดยปกติเมื่อคุณเพิ่มผู้ใช้ในระบบ Debian เนื้อหาของ/etc/skel/จะถูกคัดลอกไปยังโฮมไดเรกทอรีของผู้ใช้ใหม่ แต่/root/.bashrcไม่ตรง/etc/skel/.bashrcและไม่ตรงกับ/root/.profile นอกจากนี้ยังมีไฟล์ไม่เป็นที่รู้จักกัน/etc/skel/.profile dpkgแล้วพวกเขามาจากไหน

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