Misalnya, dapatkah saya mengatur:
gb = cd /media/Dan/evolution
... sehingga setiap kali saya mengeksekusi gb
di bash, saya bisa cd
ke direktori tertentu?
Saya menemukan sesuatu yang online: alias
perintah. Tetapi tampaknya itu tidak dapat melakukan pekerjaan di atas.
Apakah mungkin untuk melakukannya? Bagaimana?
alias gb='cd /media/Dan/evolution'
posix
keluhan, jadi tidak adilbash
.Jawaban:
ketik saja:
Untuk membuat pengaturan ini permanen (sehingga tetap setelah Anda me-restart atau membuka konsol lain) tambahkan baris ini ke file ~ / .bashrc (dengan asumsi Anda menggunakan bash sebagai shell default)
sumber
Alternatif untuk aliasing
Ini mendefinisikan shell function gb, yang tidak membutuhkan argumen, dan menjalankan cd / media / Dan / evolution. Seperti saran lainnya, ini dapat ditambahkan ke ~ / .bashrc
sumber
type gb
akan berfungsi jika itu alias atau fungsi.{ echo 'true() { : ; }' >./script ; . ./script ; command -V true ; command -V /usr/bin/true ; }
-true is a shell function\n/usr/bin/true is /usr/bin/true
-\n
karakter adalah baris baru literal dalam output.Itu mungkin, dan
alias
merupakan perintah yang Anda cari. Misalnyaalias ll="ls -l"
di bash akan membiarkan Anda mengetikll
bukanls -l
. Harap perhatikan tidak ada spasi yang digunakan saat mengatur alias.man alias
dapat bermanfaat juga.sumber
Atau, dimungkinkan untuk menulis program C yang memanggil perintah yang diinginkan dan menyimpannya ke / usr / bin.
Untuk mengkompilasinya, buka direktori tempat sumber disimpan (dalam bash) dan jalankan (Anda mungkin perlu sudo):
Setelah penelitian lebih lanjut di sini , saya menyadari hanya melemparkan perintah Anda
system()
tidak akan bekerja untuk perintah bash built in. Itu sebabnya Anda perlu membuat instance dari bash interaktif dan gema perintah Anda untuk itu. Itu terlalu rumit dan mungkin tidak berguna, kecuali jika Anda ingin, katakanlah, persingkat panggilan ke skrip shell (some_script
bukansh ~/radgeRayden/Scripts/some_script
).Referensi untuk fungsi system ()
sumber
sh -c "cd /media/Dan/evolution"
tidak berhasil. Petunjuk: subshellcd
/ subshell masalah samping, apa keuntungan dalam membungkus perintah shell dalam program c, ketika Anda bisa dengan mudah (atau lebih mudah) memasukkan perintah itu dalam skrip shell?