unix_commander 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +18 -0
- data/.rvmrc +1 -0
- data/Gemfile +4 -0
- data/Guardfile +24 -0
- data/LICENSE.txt +22 -0
- data/README.md +66 -0
- data/Rakefile +1 -0
- data/lib/unix_commander/version.rb +3 -0
- data/lib/unix_commander.rb +50 -0
- data/spec/fixtures/ps_list.txt +71 -0
- data/spec/single_commands_spec.rb +46 -0
- data/unix_commander.gemspec +26 -0
- metadata +171 -0
data/.gitignore
ADDED
data/.rvmrc
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
rvm use --create 1.9.3@unix_commander
|
data/Gemfile
ADDED
data/Guardfile
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# A sample Guardfile
|
2
|
+
# More info at https://github.com/guard/guard#readme
|
3
|
+
|
4
|
+
guard 'rspec', :cli => "--color --format nested --fail-fast --drb" do
|
5
|
+
watch(%r{^spec/.+_spec\.rb$})
|
6
|
+
watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
|
7
|
+
watch('spec/spec_helper.rb') { "spec" }
|
8
|
+
|
9
|
+
# Rails example
|
10
|
+
watch(%r{^app/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
|
11
|
+
watch(%r{^app/(.*)(\.erb|\.haml)$}) { |m| "spec/#{m[1]}#{m[2]}_spec.rb" }
|
12
|
+
watch(%r{^app/controllers/(.+)_(controller)\.rb$}) { |m| ["spec/routing/#{m[1]}_routing_spec.rb", "spec/#{m[2]}s/#{m[1]}_#{m[2]}_spec.rb", "spec/acceptance/#{m[1]}_spec.rb"] }
|
13
|
+
watch(%r{^spec/support/(.+)\.rb$}) { "spec" }
|
14
|
+
watch('config/routes.rb') { "spec/routing" }
|
15
|
+
watch('app/controllers/application_controller.rb') { "spec/controllers" }
|
16
|
+
|
17
|
+
# Capybara features specs
|
18
|
+
watch(%r{^app/views/(.+)/.*\.(erb|haml)$}) { |m| "spec/features/#{m[1]}_spec.rb" }
|
19
|
+
|
20
|
+
# Turnip features and steps
|
21
|
+
watch(%r{^spec/acceptance/(.+)\.feature$})
|
22
|
+
watch(%r{^spec/acceptance/steps/(.+)_steps\.rb$}) { |m| Dir[File.join("**/#{m[1]}.feature")][0] || 'spec/acceptance' }
|
23
|
+
end
|
24
|
+
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2012 Lorenzo Lopez
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
# UnixCommander
|
2
|
+
|
3
|
+
This is a gem used to run unix commands ruby style.
|
4
|
+
Normally to run a command we have to do something like:
|
5
|
+
|
6
|
+
```
|
7
|
+
%x[cat file | tail -n10 | grep 'something']
|
8
|
+
```
|
9
|
+
|
10
|
+
The goal is to be able to do it with a more rubyesque way.
|
11
|
+
|
12
|
+
## Installation
|
13
|
+
|
14
|
+
Add this line to your application's Gemfile:
|
15
|
+
|
16
|
+
gem 'unix_commander'
|
17
|
+
|
18
|
+
And then execute:
|
19
|
+
|
20
|
+
$ bundle
|
21
|
+
|
22
|
+
Or install it yourself as:
|
23
|
+
|
24
|
+
$ gem install unix_commander
|
25
|
+
|
26
|
+
## Usage
|
27
|
+
|
28
|
+
With this gem you will be able to run unix commands this way:
|
29
|
+
|
30
|
+
```
|
31
|
+
require 'unix_commander'
|
32
|
+
|
33
|
+
comm = UnixCommander::Command.new
|
34
|
+
comm.cat("file").tail("-n10").grep("'something'").run
|
35
|
+
```
|
36
|
+
|
37
|
+
You don't have to run the commands right away, we can create a command and run it whe we see fit:
|
38
|
+
|
39
|
+
```
|
40
|
+
require 'unix_commander'
|
41
|
+
|
42
|
+
comm = UnixCommander::Command.new
|
43
|
+
comm = comm.cat("file").tail("-n10").grep("'something'")
|
44
|
+
|
45
|
+
...
|
46
|
+
|
47
|
+
comm.run
|
48
|
+
```
|
49
|
+
|
50
|
+
Also you can run commands remotely using ssh using **run_ssh** instead of **run**.
|
51
|
+
(Syntax: **run_shh(username, password,server)** or **run_ssh(username,password)** to connect to localhost)
|
52
|
+
|
53
|
+
```
|
54
|
+
require 'unix_commander'
|
55
|
+
|
56
|
+
comm = UnixCommander::Command.new
|
57
|
+
comm.cat("file").tail("-n10").grep("'something'").run_ssh("Batou99","secret","remote_server")
|
58
|
+
```
|
59
|
+
|
60
|
+
## Contributing
|
61
|
+
|
62
|
+
1. Fork it
|
63
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
64
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
65
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
66
|
+
5. Create new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
@@ -0,0 +1,50 @@
|
|
1
|
+
require "unix_commander/version"
|
2
|
+
require 'pry'
|
3
|
+
require 'open3'
|
4
|
+
require 'net/ssh'
|
5
|
+
|
6
|
+
module UnixCommander
|
7
|
+
|
8
|
+
class Command
|
9
|
+
|
10
|
+
attr :cmd
|
11
|
+
|
12
|
+
def initialize(_cmd = "")
|
13
|
+
@cmd = _cmd
|
14
|
+
end
|
15
|
+
|
16
|
+
def method_missing(m, *args, &block)
|
17
|
+
if cmd == ""
|
18
|
+
Command.new("#{m} #{args.join(' ')}".strip)
|
19
|
+
else
|
20
|
+
Command.new("#{cmd} | #{m} #{args.join(' ')}".strip)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def run
|
25
|
+
@in, @out, @err = Open3.popen3("#{cmd}")
|
26
|
+
@out.read
|
27
|
+
end
|
28
|
+
|
29
|
+
def run_ssh(_username, _password = "", _address = "127.0.0.1")
|
30
|
+
stdout_data = ""
|
31
|
+
Net::SSH.start(_address,_username,:password => _password) do |ssh|
|
32
|
+
channel = ssh.open_channel do |ch|
|
33
|
+
ch.exec(@cmd) do |ch,success|
|
34
|
+
# "on_data" is called when the process writes something to stdout
|
35
|
+
ch.on_data do |c, data|
|
36
|
+
stdout_data += data
|
37
|
+
end
|
38
|
+
|
39
|
+
# "on_extended_data" is called when the process writes something to stderr
|
40
|
+
ch.on_extended_data do |c, type, data|
|
41
|
+
raise "Error on command: #{data}"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
# We have to strip the extra linefeed
|
47
|
+
stdout_data
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
|
2
|
+
root 1 0.0 0.3 3520 1532 ? Ss Nov23 0:00 /sbin/init
|
3
|
+
root 2 0.0 0.0 0 0 ? S Nov23 0:00 [kthreadd]
|
4
|
+
root 3 0.0 0.0 0 0 ? S Nov23 0:02 [ksoftirqd/0]
|
5
|
+
root 5 0.0 0.0 0 0 ? S Nov23 0:00 [kworker/u:0]
|
6
|
+
root 6 0.0 0.0 0 0 ? S Nov23 0:00 [migration/0]
|
7
|
+
root 7 0.0 0.0 0 0 ? S Nov23 0:04 [watchdog/0]
|
8
|
+
root 8 0.0 0.0 0 0 ? S< Nov23 0:00 [cpuset]
|
9
|
+
root 9 0.0 0.0 0 0 ? S< Nov23 0:00 [khelper]
|
10
|
+
root 10 0.0 0.0 0 0 ? S Nov23 0:00 [kdevtmpfs]
|
11
|
+
root 11 0.0 0.0 0 0 ? S< Nov23 0:00 [netns]
|
12
|
+
root 12 0.0 0.0 0 0 ? S Nov23 0:02 [sync_supers]
|
13
|
+
root 13 0.0 0.0 0 0 ? S Nov23 0:00 [bdi-default]
|
14
|
+
root 14 0.0 0.0 0 0 ? S< Nov23 0:00 [kintegrityd]
|
15
|
+
root 15 0.0 0.0 0 0 ? S< Nov23 0:00 [kblockd]
|
16
|
+
root 16 0.0 0.0 0 0 ? S< Nov23 0:00 [ata_sff]
|
17
|
+
root 17 0.0 0.0 0 0 ? S Nov23 0:00 [khubd]
|
18
|
+
root 18 0.0 0.0 0 0 ? S< Nov23 0:00 [md]
|
19
|
+
root 19 0.0 0.0 0 0 ? S Nov23 0:00 [kworker/u:1]
|
20
|
+
root 21 0.0 0.0 0 0 ? S Nov23 0:00 [khungtaskd]
|
21
|
+
root 22 0.0 0.0 0 0 ? S Nov23 0:00 [kswapd0]
|
22
|
+
root 23 0.0 0.0 0 0 ? SN Nov23 0:00 [ksmd]
|
23
|
+
root 24 0.0 0.0 0 0 ? S Nov23 0:00 [fsnotify_mark]
|
24
|
+
root 25 0.0 0.0 0 0 ? S Nov23 0:00 [ecryptfs-kthrea]
|
25
|
+
root 26 0.0 0.0 0 0 ? S< Nov23 0:00 [crypto]
|
26
|
+
root 34 0.0 0.0 0 0 ? S< Nov23 0:00 [kthrotld]
|
27
|
+
root 36 0.0 0.0 0 0 ? S Nov23 0:00 [scsi_eh_0]
|
28
|
+
root 37 0.0 0.0 0 0 ? S Nov23 0:00 [scsi_eh_1]
|
29
|
+
root 39 0.0 0.0 0 0 ? S Nov23 0:00 [scsi_eh_2]
|
30
|
+
root 61 0.0 0.0 0 0 ? S< Nov23 0:00 [devfreq_wq]
|
31
|
+
root 219 0.0 0.0 0 0 ? S< Nov23 0:00 [kdmflush]
|
32
|
+
root 228 0.0 0.0 0 0 ? S< Nov23 0:00 [kdmflush]
|
33
|
+
root 242 0.0 0.0 0 0 ? S Nov23 0:01 [jbd2/dm-0-8]
|
34
|
+
root 243 0.0 0.0 0 0 ? S< Nov23 0:00 [ext4-dio-unwrit]
|
35
|
+
root 330 0.0 0.1 2816 588 ? S Nov23 0:00 upstart-udev-bridge --daemon
|
36
|
+
root 332 0.0 0.1 2944 852 ? Ss Nov23 0:00 /sbin/udevd --daemon
|
37
|
+
root 439 0.0 0.0 0 0 ? S< Nov23 0:00 [kpsmoused]
|
38
|
+
root 480 0.0 0.0 2828 176 ? S Nov23 0:00 upstart-socket-bridge --daemon
|
39
|
+
root 745 0.0 0.2 6664 1516 ? Ss Nov23 0:00 /usr/sbin/sshd -D
|
40
|
+
102 750 0.0 0.0 3240 356 ? Ss Nov23 0:00 dbus-daemon --system --fork --activation=upstart
|
41
|
+
syslog 760 0.0 0.1 30148 880 ? Sl Nov23 0:22 rsyslogd -c5
|
42
|
+
root 822 0.0 0.1 4612 672 tty4 Ss+ Nov23 0:00 /sbin/getty -8 38400 tty4
|
43
|
+
root 830 0.0 0.1 4612 672 tty5 Ss+ Nov23 0:00 /sbin/getty -8 38400 tty5
|
44
|
+
root 840 0.0 0.1 4612 672 tty2 Ss+ Nov23 0:00 /sbin/getty -8 38400 tty2
|
45
|
+
root 841 0.0 0.1 4612 672 tty3 Ss+ Nov23 0:00 /sbin/getty -8 38400 tty3
|
46
|
+
root 846 0.0 0.1 4612 672 tty6 Ss+ Nov23 0:00 /sbin/getty -8 38400 tty6
|
47
|
+
whoopsie 866 0.0 0.4 24440 2168 ? Ssl Nov23 0:15 whoopsie
|
48
|
+
root 867 0.0 0.0 2156 484 ? Ss Nov23 0:00 acpid -c /etc/acpi/events -s /var/run/acpid.socket
|
49
|
+
root 893 0.0 0.1 2600 708 ? Ss Nov23 0:00 cron
|
50
|
+
daemon 894 0.0 0.0 2452 232 ? Ss Nov23 0:00 atd
|
51
|
+
root 925 0.0 0.1 4612 672 tty1 Ss+ Nov23 0:00 /sbin/getty -8 38400 tty1
|
52
|
+
dev 1395 0.0 0.7 5640 3564 ? Ss Nov23 3:02 tmux -2
|
53
|
+
root 2922 0.0 0.6 9604 3088 ? Ss 12:18 0:00 sshd: dev [priv]
|
54
|
+
dev 3083 0.0 0.2 9604 1468 ? S 12:18 0:00 sshd: dev@pts/1
|
55
|
+
dev 3084 0.0 1.1 9420 5924 pts/1 Ss 12:18 0:00 -zsh
|
56
|
+
root 3816 0.0 0.0 0 0 ? S 12:38 0:00 [kworker/0:0]
|
57
|
+
root 4002 0.0 0.0 0 0 ? S 12:45 0:00 [flush-252:0]
|
58
|
+
dev 4199 0.0 1.7 25804 8876 pts/5 S+ 12:46 0:00 vim
|
59
|
+
dev 4460 0.0 0.2 3256 1024 pts/1 S+ 12:53 0:00 tmux -2
|
60
|
+
dev 4461 0.0 1.0 8812 5272 pts/2 Ss 12:53 0:00 -zsh
|
61
|
+
dev 4971 0.0 1.0 8924 5216 pts/5 Ss Nov23 0:00 -zsh
|
62
|
+
dev 5368 0.0 0.8 8024 4284 pts/3 Ss+ 12:57 0:00 -zsh
|
63
|
+
root 5566 0.0 0.0 0 0 ? S 13:03 0:00 [kworker/0:2]
|
64
|
+
mysql 5590 0.0 8.7 328964 44596 ? Ssl Nov23 2:04 /usr/sbin/mysqld
|
65
|
+
root 5661 0.0 0.0 0 0 ? S 13:08 0:00 [kworker/0:1]
|
66
|
+
dev 5809 0.0 0.2 4924 1164 pts/2 R+ 13:10 0:00 ps axu
|
67
|
+
dev 6124 0.0 1.2 26712 6424 pts/5 T Nov23 0:16 vim
|
68
|
+
dev 20477 0.0 1.1 9496 5892 pts/6 Ss Nov26 0:00 -zsh
|
69
|
+
dev 29317 0.0 9.6 69572 49144 pts/6 Sl+ Nov26 0:53 ruby /home/dev/.rvm/gems/ruby-1.9.3-p194@app_checker/bin/rackup
|
70
|
+
root 30080 0.0 0.1 2940 616 ? S Nov27 0:00 /sbin/udevd --daemon
|
71
|
+
root 30085 0.0 0.1 2892 660 ? S Nov27 0:00 /sbin/udevd --daemon
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'pry'
|
2
|
+
require './lib/unix_commander'
|
3
|
+
|
4
|
+
describe "Commands without chaining" do
|
5
|
+
before do
|
6
|
+
@command = UnixCommander::Command.new
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should run commands with no args" do
|
10
|
+
version = %x[uname]
|
11
|
+
@command.uname.run.should == version
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should run commands with one arg" do
|
15
|
+
long_version = %x[uname -a]
|
16
|
+
@command.uname("-a").run.should == long_version
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
|
21
|
+
describe "Commands with chaining" do
|
22
|
+
before do
|
23
|
+
@command = UnixCommander::Command.new
|
24
|
+
end
|
25
|
+
|
26
|
+
it "can chain 2 commands" do
|
27
|
+
uname_cut = %x[uname -a | cut -d'#' -f1]
|
28
|
+
@command.uname("-a").cut("-d'#' -f1").run.should == uname_cut
|
29
|
+
end
|
30
|
+
|
31
|
+
it "can chain 3 commands" do
|
32
|
+
cpuinfo = %x[ cat /proc/cpuinfo | awk '{ print $1 }' | head -n1]
|
33
|
+
@command.cat("/proc/cpuinfo").awk("'{ print $1 }'").head("-n1").run.should == cpuinfo
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
describe "Run via ssh" do
|
38
|
+
before do
|
39
|
+
@command = UnixCommander::Command.new
|
40
|
+
end
|
41
|
+
|
42
|
+
it "can chain 2 commands" do
|
43
|
+
uname_cut = %x[uname -a | cut -d'#' -f1]
|
44
|
+
@command.uname("-a").cut("-d'#' -f1").run_ssh('dev','dev').should == uname_cut
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'unix_commander/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |gem|
|
7
|
+
gem.name = "unix_commander"
|
8
|
+
gem.version = UnixCommander::VERSION
|
9
|
+
gem.authors = ["Lorenzo Lopez"]
|
10
|
+
gem.email = ["lorenzo.lopez@uk.tesco.com"]
|
11
|
+
gem.description = %q{A gem to run unix commands on a more ruby-esque way}
|
12
|
+
gem.summary = gem.description
|
13
|
+
gem.homepage = "https://github.com/Batou99/unix_commander"
|
14
|
+
|
15
|
+
gem.files = `git ls-files`.split($/)
|
16
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
17
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
|
+
gem.require_paths = ["lib"]
|
19
|
+
gem.add_dependency "net-ssh", ">=2.6.2"
|
20
|
+
gem.add_development_dependency "rspec", "~> 2.12"
|
21
|
+
gem.add_development_dependency "pry"
|
22
|
+
gem.add_development_dependency "pry-debugger"
|
23
|
+
gem.add_development_dependency "guard-rspec"
|
24
|
+
gem.add_development_dependency "rb-inotify"
|
25
|
+
gem.add_development_dependency "rb-fsevent"
|
26
|
+
end
|
metadata
ADDED
@@ -0,0 +1,171 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: unix_commander
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.2
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Lorenzo Lopez
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2012-11-30 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: net-ssh
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 2.6.2
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 2.6.2
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: rspec
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '2.12'
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '2.12'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: pry
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: pry-debugger
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: guard-rspec
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '0'
|
86
|
+
type: :development
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: rb-inotify
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :development
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: rb-fsevent
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
114
|
+
requirements:
|
115
|
+
- - ! '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
126
|
+
description: A gem to run unix commands on a more ruby-esque way
|
127
|
+
email:
|
128
|
+
- lorenzo.lopez@uk.tesco.com
|
129
|
+
executables: []
|
130
|
+
extensions: []
|
131
|
+
extra_rdoc_files: []
|
132
|
+
files:
|
133
|
+
- .gitignore
|
134
|
+
- .rvmrc
|
135
|
+
- Gemfile
|
136
|
+
- Guardfile
|
137
|
+
- LICENSE.txt
|
138
|
+
- README.md
|
139
|
+
- Rakefile
|
140
|
+
- lib/unix_commander.rb
|
141
|
+
- lib/unix_commander/version.rb
|
142
|
+
- spec/fixtures/ps_list.txt
|
143
|
+
- spec/single_commands_spec.rb
|
144
|
+
- unix_commander.gemspec
|
145
|
+
homepage: https://github.com/Batou99/unix_commander
|
146
|
+
licenses: []
|
147
|
+
post_install_message:
|
148
|
+
rdoc_options: []
|
149
|
+
require_paths:
|
150
|
+
- lib
|
151
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
152
|
+
none: false
|
153
|
+
requirements:
|
154
|
+
- - ! '>='
|
155
|
+
- !ruby/object:Gem::Version
|
156
|
+
version: '0'
|
157
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
158
|
+
none: false
|
159
|
+
requirements:
|
160
|
+
- - ! '>='
|
161
|
+
- !ruby/object:Gem::Version
|
162
|
+
version: '0'
|
163
|
+
requirements: []
|
164
|
+
rubyforge_project:
|
165
|
+
rubygems_version: 1.8.24
|
166
|
+
signing_key:
|
167
|
+
specification_version: 3
|
168
|
+
summary: A gem to run unix commands on a more ruby-esque way
|
169
|
+
test_files:
|
170
|
+
- spec/fixtures/ps_list.txt
|
171
|
+
- spec/single_commands_spec.rb
|