Saya tidak tahu mengapa saya mendapatkan kesalahan ini
-bash: /dev/ttys000: Permission denied
ketika saya mencoba untuk sumber saya ~/.bash_profile
? Tidak ada yang berubah dalam pengaturan saya (OS X 10.10.1), kecuali instalasi Csound baru-baru ini.
~/.bash_profile
... Di sini di luar ada lebih banyak pengguna Linux daripada Osx daripada yang dapat Anda bayangkan ... :-)Jawaban:
Hanya tembakan dalam kegelapan: ada skrip atau perintah di Anda
~/.bash_profile
yang mencoba untuk menulis/dev/ttys000
yang ditutup untuk menulis untuk proses / pengguna.Jika Anda ingin mengidentifikasi di mana kesalahan itu terjadi, coba aktifkan debugging shell saat ini:
Jika Anda menemukan siapa / mengapa dan Anda tidak dapat menyelesaikan masalah, kirimkan pertanyaan lain tentang itu.
Contoh:
Dalam file
aaa.sh
ada:Output dari
set -x; source aaa.sh; set +x
adalah:Kesalahan dihasilkan dari baris sebelum (
++ ls --color /ahksfjkasd
)sumber
~/.bash_profile
menyebabkan masalah - ituexport GPG_TTY="$(`tty`)"
, di manaGPG_TTY
variabel lingkungan diperlukan untuk program pinentry kutukan yang digunakan oleh GnuPG - gnupg.org/documentation/manuals/gnupg/Common-Problems.html . Saya tidak mengerti rekomendasi mereka, mereka ingin nilai`tty`
ditugaskanGPG_TTY
, tetapi ini tidak berhasil. Menghapus backticks memberi nilai yang benartty
untukGPG_TTY
.`
dari ekspresimu. (sangat terlambat ;) ). Menggunakan a =`mycommand`
atau a =$(mycommand)
menghasilkan efek yang sama (jalankan perintahmycommand
dan simpan hasilnya dalam variabela
). Mungkin salah cetak.GPG_TTY="$(tty)
".