Kanrisuru

which

Show the full path of a shell command in ruby with which.
linux manual

Basic Usage

require 'kanrisuru'
host = Kanrisuru::Remote::Host.new(host: '127.0.1.1', username: 'ubuntu', keys: ['~/.ssh/id_rsa'])

result = host.which('cat', all: true)
result.success? 
true

result.map(&:path)
['/usr/bin/cat', '/bin/cat']

Parameters

Field Type Description
program_name string
Required name of program to get full path of
all boolean
Gets all matching executables, not just the first

Result

Returns an array of FilePath structs.

FilePath Fields

Field Type Description
path string Symbolic or absolute file path

Return Example

host.which('cat')[0]
#<Struct:Kanrisuru::Core::Path::FilePath:0x00000618
  path = "/usr/bin/cat"
>

Exit Status

Code Description
0 Success
1 Failure

Tested On

  • Ubuntu, Debian, Centos, Fedora, Redhat, OpenSuse, SLES