Terlepas dari jawaban @ChrisDown, berikut adalah pendekatan lain: memintas direktori
Dengan pendekatan ini, Anda dapat:
vi ./*
dan itu akan mulai vi pada semua file di direktori saat ini bahkan jika itu berisi subdir, melewati subdirs tersebut
vi() {
for arg do
[ -d "$arg" ] || set -- "$@" "$arg"
shift
done
[ "$#" -gt 0 ] && command vi "$@"
}
Yang ini hanya melakukan vi, pada argumen apa pun yang bukan direktori ... Oleh karena itu tidak akan mengajarkan Anda untuk menggunakan "vi" untuk "cd";)
Dan itu tidak akan memanggil vi jika Anda baru saja melakukannya: vi somedirectory (mis., Salah ketik vi bukan cd). Tapi itu tidak akan cd ada secara otomatis, jadi Anda masih ingat Anda harus mengetikkan cd ^^
Saya menggunakan cara "kompatibel" untuk mengubah daftar argumen, sehingga mudah dibawa ke banyak platform.