Altere o diretório, liste arquivos e imprima o caminho do diretório atual em um comando

Se você colocar esta função bash em seu arquivo .bashrc ou .bash_aliases em sua pasta inicial (desde que você use um sistema operacional semelhante ao Unix, como Linux ou Mac OS):

c() {
cd $1
;
ls
-l;
echo
" "
pwd
;
}

… então você pode mudar de diretório, listar os arquivos atuais no diretório e ver em qual diretório você está, apenas usando “c” em vez de “cd” quando você muda de pasta no terminal!

Por exemplo, se eu quiser mudar o diretório da minha pasta inicial (indicada por ~ no terminal) para um dos meus projetos de código Go, fica assim:

[samuel ~]$ c code/go/src/basecompl_blow/
total
118M
-rwxrwxr-x 1 samuel samuel 1,9M nov 7 18:47 basecompl_blow
-rw-rw-r-- 1 samuel samuel 2,0K aug 12 15:51 basecompl_blow.go
-rw-rw-r-- 1 samuel samuel 12K aug 11 02:13 bc1.log
-rw-rw-r-- 1 samuel samuel 24 aug 11 02:33 breakpoints.txt
-rw-rw-r-- 1 samuel samuel 66K aug 12 15:14 dbg.txt
lrwxrwxrwx
1 samuel samuel 50 nov 7 18:46 Homo_sapiens.GRCh37.67.dna_rm.chromosome.Y.fa -> Homo_sapiens.GRCh37.67.dna_rm.chromosome.Y.fa.orig
-rw-rw-r-- 1 samuel samuel 58M aug 8 15:36 Homo_sapiens.GRCh37.67.dna_rm.chromosome.Y.fa.orig
-rw-rw-r-- 1 samuel samuel 7,8K aug 8 15:36 Homo_sapiens.GRCh37.67.dna_rm.chromosome.Y.fa.short
-rw-rw-r-- 1 samuel samuel 8,1K aug 11 01:50 Homo_sapiens.GRCh37.67.dna_rm.chromosome.Y.fa.short.linenum
-rw-rw-r-- 1 samuel samuel 58M nov 7 18:47 out.txt

/home/samuel/code/go/src/basecompl_blow
[samuel basecompl_blow]$

Acho que isso economiza toneladas de pressionamentos de teclas, já que 90% dos comandos que digito são cd, ll e, frequentemente, gostaria de ver a saída de pwd também.

Com este c-comando, posso navegar e ver o contexto de onde estou, mais como em um navegador de arquivos gráfico típico, enquanto ainda uso o poder do terminal.