tutorial programas ejemplos ruby bash unix tree pry

tutorial - ejemplos de programas en ruby



comando de árbol en osx bash (2)

Estoy siguiendo una pantalla en una gema de rubí llamada pry . A las 8:10, se usa el comando .tree, que creo que es un comando de Unix.

No parece estar funcionando en mi sistema:

[24] pry(main)> .tree /Error: there was a problem executing system command: tree

y he rastreado el problema hasta here , en el que apy hace referencia a un comando de shell:

Pry::CommandSet.new do command(//.(.*)/, "All text following a ''.'' is forwarded to the shell.", :listing => ".<shell command>") do |cmd| if cmd =~ /^cd/s+(.+)/i dest = $1 begin Dir.chdir File.expand_path(dest) rescue Errno::ENOENT output.puts "No such directory: #{dest}" end else if !system(cmd) output.puts "Error: there was a problem executing system command: #{cmd}" end end end

Desde el contexto de bash intenté usar el árbol de comandos sin suerte:

projects/sms(apps2)$ tree -bash: tree: command not found ~/projects/sms(apps2)$ .tree -bash: .tree: command not found

Esto parece increíblemente útil, ¿cómo puedo obtener este comando?


Para un enfoque simple, también puede agregar el siguiente alias a su archivo ~/.bashrc o ~/.zshrc :

alias tree="find . -print | sed -e ''s;[^/]*/;|____;g;s;____|; |;g''"

Esto resulta en lo siguiente:

$ tree . |____.git | |____config | |____objects | | |____pack | | |____info | |____HEAD | |____info | | |____exclude | |____description | |____hooks | | |____commit-msg.sample | | |____pre-rebase.sample | | |____pre-commit.sample | | |____applypatch-msg.sample | | |____pre-receive.sample | | |____prepare-commit-msg.sample | | |____post-update.sample | | |____pre-applypatch.sample | | |____pre-push.sample | | |____update.sample | |____refs | | |____heads | | |____tags

Encontré esta solución aquí:


Usando homebrew :

brew install tree

Utilizando macports :

sudo port install tree

Usando la fuente :

Siga estas instrucciones. (Advertencia: debes usar las banderas / etc. que tengan sentido).

<rant> Todos los sistemas deben venir con el tree ; Lo uso mucho. Y podemos publicar estructuras de directorios como texto, no fotos. </rant>