Di mana variabel lingkungan Shake terletak di macOS yang memungkinkan untuk meluncurkan Shake.app melalui sesi Terminal di High Sierra?
Tidak ada variabel Shake di dalamnya ~/.bash_profile
, /etc/profile
dan /etc/bashrc
.
Di mana variabel lingkungan Shake terletak di macOS yang memungkinkan untuk meluncurkan Shake.app melalui sesi Terminal di High Sierra?
Tidak ada variabel Shake di dalamnya ~/.bash_profile
, /etc/profile
dan /etc/bashrc
.
Anda dapat mengakses shake
alat baris perintah karena ada dalam direktori yang tercantum dalam PATH
variabel lingkungan di lingkungan Anda.
Jika Anda ingin mengetahui lokasi yang tepat dari shake
executable Anda dapat mengetik:
which shake
Yang akan menampilkan daftar tempat pertama yang shake
dapat dieksekusi ketika mencari semua direktori di PATH
variabel lingkungan.
Jika Anda ingin melihat semua tempat yang shake
ada, Anda dapat mengetik:
which -a shake
Dan itu akan mendaftar semua tempat di mana perintah yang dipanggil shake
dapat ditemukan. Saya tidak punya shake
di komputer saya, tapi di sini adalah contoh menggunakan bash
. Kejadian pertama dari bash
executable untuk saya:
IanCsiMac:~
> which bash
/usr/local/bin/bash
Dan semua tempat saya dapat menemukan bash
executable di PATH
:
IanCsiMac:~
> which -a bash
/usr/local/bin/bash
/usr/local/bin/bash
/bin/bash
Dan PATH
variabel saya terlihat seperti ini:
IanCsiMac:~
> perl -e 'print join("\n", split(/:/,$ENV{"PATH"}))'
/Users/ian/.gem/ruby/2.3.1/bin
/Users/ian/.rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/bin
/Users/ian/.rubies/ruby-2.3.1/bin
/usr/local/sbin
/usr/local/bin
/Users/ian/google-cloud-sdk/bin
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/Applications/Server.app/Contents/ServerRoot/usr/bin
/Applications/Server.app/Contents/ServerRoot/usr/sbin
/usr/local/MacGPG2/bin
/usr/local/mysql/bin
/Users/ian/bin
/opt/nginx/sbin
/opt/local/bin
/opt/local/sbin
/Users/ian/Development/go/bin
Perintah Bash which shake
memberi saya hasil berikut:
/usr/bin/shake
Dan konten shake
file dalam /usr/bin/
berisi skrip seperti ini:
# set env var, NR_SHAKE_LOCATION if not set
if ${?NR_SHAKE_LOCATION} == 0 then
pushd `dirname $0` >& /dev/null
setenv NR_SHAKE_LOCATION /Applications/Shake
popd >& /dev/null
endif
# launch shake
exec ${NR_SHAKE_LOCATION}/shake.app/Contents/MacOS/shake $argv:q