Bagaimana cara mengatur pintasan ke direktori di Mac OS X Terminal?

18

Yang ingin saya lakukan adalah ketika saya di Terminal mengetik:

cd myFolderShortcut

Dan untuk itu langsung ke direktori saya sudah mengatur dengan alias ini. Apakah ini mungkin?

Saya memang melakukan google untuk itu dan Aliases mungkin yang saya inginkan, tetapi saya tidak bisa membuatnya bekerja.

benhowdle89
sumber
Jika yang Anda inginkan adalah perintah yang lebih pendek untuk melakukan cd ke direktori tertentu, yang perlu Anda lakukan adalah menambahkan yang berikut ke ~/.bashrc: Anda alias myalias='cd /path/to/directory'. Anda dapat mengganti myaliasdengan nama perintah kustom apa pun yang Anda inginkan.
Lihat github.com/joelthelion/autojump/wiki , mungkin juga cocok untuk Anda.
Daniel Beck

Jawaban:

36

Anda tidak perlu file pintas atau semacamnya.


Anda dapat mengatur alias ~/.bash_profiledengan menambahkan baris berikut, jadi Anda hanya perlu mengetik myFolderShortcutuntuk masuk ke sana (tanpa cd):

alias myFolderShortcut='cd /Users/danielbeck/Documents'

Anda juga perlu mengetikkan perintah di atas atau

source ~/.bash_profile

untuk mendapatkan ini berlaku. Ini berfungsi dari direktori mana pun, tetapi mengharuskan shell login Anda bash(yang merupakan standar OS X)


Anda tentu saja dapat membuat tautan simbolis ke direktori lain di direktori home Anda. Kemudian, ketika Anda membuka Terminal dan berada di direktori home Anda, cding membawa Anda ke direktori yang ditautkan.

ln -s /Users/danielbeck/Documents/Projects myProjectsDir

Kemudian, ketik cd myProjectsDirdan Anda berada di sana (jalur yang ditampilkan berisi myProjectsDir, bukan Documents/Projects).

Tautan simbolik akan ditampilkan di Finder. Untuk menyembunyikannya, ketikkan chflags hidden myProjectsDir.

Ini hanya akan bekerja ketika Anda berada di direktori home Anda untuk memulai ( cdtanpa argumen membawa Anda ke sana dengan cepat; Anda dapat mengetik kedua perintah pada baris yang sama:) cd && cd myProjectsDir.

Daniel Beck
sumber
cdseperti cd ~alias favorit saya.
Rob
@Rob Ini bukan teknis alias. cdtanpa argumen hanya menyiratkan ~. cd -Ngomong-ngomong, aku lebih suka .
Daniel Beck
Hai, saya tidak bisa membuat teknik Anda bekerja. Saya ingin membuat jalan pintas ke direktori solr saya. Saat ini tinggal di my: alias solr = 'cd / Applications / MAMP / htdocs / website / WhoAt / solr / whoat /' Mungkin jalur saya tidak benar?
Leon Gaban
@Leon Apakah Anda menggunakan bashshell?
Daniel Beck
Saya pikir saya menggunakan default saya pikir ...
Leon Gaban
4

Saya tahu ini sudah tua, tetapi ini mungkin bisa membantu seseorang.

Setelah Anda mengikuti jawaban @Daniel Beck di atas, dan menambahkan alias ke bash_profile seperti yang ia sebutkan, Anda harus mengetik yang berikut di jendela terminal:

source .bash_profile

Ini akan membuat semua alias Anda berfungsi.

Saya mendapatkan ini dari jawaban ini pada stack overflow. Ini berhasil untuk ku. Saya harap ini bekerja untuk seseorang yang mencari ini ...

Bagaimana cara membuat pintasan terminal ke jalur ini?

Salman Hasrat Khan
sumber
2
Terima kasih, ini berguna. Juga source ~/.bash_profilemungkin cara yang lebih umum dari menulis itu
mattsven
1

Hanya satu hal yang ingin saya tambahkan, karena itu terjadi pada saya dan saya berhenti beberapa saat untuk menemukan kesalahan. Saya menulis alias myFolderShortcut = 'cd /Users/danielbeck/Documents' karena saya suka memiliki ruang di antara tanda-tanda saya yang sama. Tapi itu memberi saya kesalahan.

Jadi setelah menghapus spasi itu berhasil.

Jadi gunakan

alias myFolderShortcut='cd /Users/danielbeck/Documents'

Saya harap ini akan membantu seseorang di masa depan.

Peter
sumber
0

Pendekatan lain adalah dengan menggunakan variabel lingkungan CDPATH. Ini berfungsi untuk cdperintah seperti cara PATH bekerja untuk menjalankan program - jika Anda mengetik cdperintah dengan parameter yang tidak dimulai dengan /(atau ~), shell mencari direktori dengan nama itu di bawah setiap komponen CDPATH. Misalnya, jika Anda ingin akses cepat ke direktori berikut:

  • /Users/benhowdle89/Documents/Projects/Project42
  • /Applications/MAMP/htdocs/website/WhoAt/solr/whoat
  • /the/quick/brown/fox/jumps/over/the/lazy/dog

kemudian atur CDPATH ke nilai berikut

:/Users/benhowdle89/Documents/Projects:/Applications/MAMP/htdocs/website/WhoAt/solr:/the/quick/brown/fox/jumps/over/the/lazy

dan Anda akan dapat menggunakan perintah cd Project42,, cd whoatdan cd dog, dll. Nilai dimulai dengan titik dua ( :) untuk memasukkan entri nol awal. Dalam beberapa shell, ini perlu cduntuk melihat direktori saat ini terlebih dahulu.

Ini seharusnya bekerja di sebagian besar shell tipe POSIX; misalnya, bashdan ksh. Untuk bash, letakkan perintah seperti

export CDPATH=:/Users/benhowdle89/Documents/Projects:/Applications/MAMP/htdocs/website/…

ke dalam ~/.bash_profileatau ~/.bashrc. (Jika Anda menggunakan ~/.bashrc, Anda mungkin dapat meninggalkan export.) Untuk shell tipe csh, gunakan cdpathdan sintaks gaya csh yang sesuai.

G-Man Mengatakan 'Reinstate Monica'
sumber