¿Es bash lo mismo que Batch?

¿Es bash lo mismo que Batch?

En Windows, cuando ejecuto "lista de tareas", el símbolo del sistema devuelve la lista de procesos, pensé que era una función integrada, pero era solo un ejecutable en el directorio System32. Ahora quiero preguntar si el comando 'ps' en Linux también es un ejecutable o un comando integrado del propio terminal Bash.

Otra pregunta: ¿SSH es solo una terminal Bash? (Pero, por supuesto, con alguna función avanzada, como por ejemplo a través de la red)

Respuesta1

Para enumerar todos los comandos integrados:

compgen -b

Para obtener información sobre un solo comando, puede usar typeel comando. p.ej:

type -a cd
cd is a shell builtin

o (compruébalo):

compgen -b | grep cd
cd

Ejemplo 2:

compgen -b | grep ssh

No devuelve nada, ssh es un comando externo.

Más información :

  • Bash (shell Unix)
  • Escribe man bashdesde la terminal (Una documentación detallada).

Respuesta2

Responderé la primera parte. Primero, un shell incorporado:

$ help command
command: command [-pVv] command [arg ...]
    Execute a simple command or display information about commands.

    Runs COMMAND with ARGS suppressing  shell function lookup, or display
    information about the specified COMMANDs.  Can be used to invoke commands
    on disk when a function with the same name exists.

    Options:
      -p    use a default value for PATH that is guaranteed to find all of
            the standard utilities
      -v    print a description of COMMAND similar to the `type' builtin
      -V    print a more verbose description of each COMMAND

    Exit Status:
    Returns exit status of COMMAND, or failure if COMMAND is not found.

A continuación, utilice el commandarchivo integrado para comprobarlo ps.

$ command -V ps
ps is hashed (/bin/ps)

Por tanto, pses su propio binario.

Respuesta3

Bueno, pses un binario independiente. Intente which cmdo whereis cmdencuentre eso sobre cualquier 'cmd'. También puede encontrar puertos .exe para dichos comandos de Unix/linux para Windows.

SSH abre un canal de comunicación basado en texto (terminal virtual) entre usted y una máquina remota. 'bash' es uno de los shells más utilizados, pero también hay otros como tcsh, csh, ksh, etc. Entonces, en palabras simples, SSH no es solo una terminal bash.

información relacionada