pwn 0.4.724 → 0.4.726
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/README.md +2 -2
- data/lib/pwn/plugins/black_duck_binary_analysis.rb +209 -0
- data/lib/pwn/plugins.rb +1 -0
- data/lib/pwn/version.rb +1 -1
- data/spec/lib/pwn/plugins/black_duck_binary_analysis_spec.rb +15 -0
- metadata +3 -2
- data/.each do |child_pid| +0 -258
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cc4383903a4103b4802983aecfb742f7782f4dce4c753b1e5508153910c6fe50
|
4
|
+
data.tar.gz: cb369d172afcd4248c432a1e00eca876a454466aa7ed035224ee30e04afdfeff
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 46a0fe498e9c91b8d66f9e9576c4839437ae9e8d26f19963a2900005b538a9ebef5d256a20331691a18b332f2e45dee0ed1d80276c972256c0fd1010691ae745
|
7
|
+
data.tar.gz: fe567d6804e55d11d95b4ce82dd1e3e086dacaf8fcd9b88cac9b445743fee632af6761948f082c6babc1d6121a86bdb467ee10f41c84a34f5540021ad6fd2e78
|
data/README.md
CHANGED
@@ -37,7 +37,7 @@ $ rvm use ruby-3.2.2@pwn
|
|
37
37
|
$ rvm list gemsets
|
38
38
|
$ gem install --verbose pwn
|
39
39
|
$ pwn
|
40
|
-
pwn[v0.4.
|
40
|
+
pwn[v0.4.726]:001 >>> PWN.help
|
41
41
|
```
|
42
42
|
|
43
43
|
[![Installing the pwn Security Automation Framework](https://raw.githubusercontent.com/0dayInc/pwn/master/documentation/pwn_install.png)](https://youtu.be/G7iLUY4FzsI)
|
@@ -52,7 +52,7 @@ $ rvm use ruby-3.2.2@pwn
|
|
52
52
|
$ gem uninstall --all --executables pwn
|
53
53
|
$ gem install --verbose pwn
|
54
54
|
$ pwn
|
55
|
-
pwn[v0.4.
|
55
|
+
pwn[v0.4.726]:001 >>> PWN.help
|
56
56
|
```
|
57
57
|
|
58
58
|
|
@@ -0,0 +1,209 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'json'
|
4
|
+
require 'securerandom'
|
5
|
+
require 'tty-spinner'
|
6
|
+
|
7
|
+
module PWN
|
8
|
+
module Plugins
|
9
|
+
# This plugin is used for interacting w/ the Black Duck Binary Analysis
|
10
|
+
# REST API using the 'rest' browser type of PWN::Plugins::TransparentBrowser.
|
11
|
+
# This is based on the following Black Duck Binary Analysis API Specification:
|
12
|
+
# https://protecode-sc.com/help/api
|
13
|
+
module BlackDuckBinaryAnalysis
|
14
|
+
# Supported Method Parameters::
|
15
|
+
# bd_bin_analysis_rest_call(
|
16
|
+
# token: 'required - Black Duck Binary Analysis API token',
|
17
|
+
# http_method: 'optional HTTP method (defaults to GET)
|
18
|
+
# rest_call: 'required rest call to make per the schema',
|
19
|
+
# params: 'optional params passed in the URI or HTTP Headers',
|
20
|
+
# http_body: 'optional HTTP body sent in HTTP methods that support it e.g. POST'
|
21
|
+
# )
|
22
|
+
|
23
|
+
private_class_method def self.bd_bin_analysis_rest_call(opts = {})
|
24
|
+
http_method = if opts[:http_method].nil?
|
25
|
+
:get
|
26
|
+
else
|
27
|
+
opts[:http_method].to_s.scrub.to_sym
|
28
|
+
end
|
29
|
+
rest_call = opts[:rest_call].to_s.scrub
|
30
|
+
params = opts[:params]
|
31
|
+
http_body = opts[:http_body]
|
32
|
+
http_body ||= {}
|
33
|
+
base_bd_bin_analysis_api_uri = 'https://protocode-sc.com/api'
|
34
|
+
token = opts[:token]
|
35
|
+
|
36
|
+
content_type = 'application/json; charset=UTF-8'
|
37
|
+
|
38
|
+
browser_obj = PWN::Plugins::TransparentBrowser.open(browser_type: :rest)
|
39
|
+
rest_client = browser_obj[:browser]::Request
|
40
|
+
|
41
|
+
spinner = TTY::Spinner.new
|
42
|
+
spinner.auto_spin
|
43
|
+
|
44
|
+
case http_method
|
45
|
+
when :delete
|
46
|
+
response = rest_client.execute(
|
47
|
+
method: :delete,
|
48
|
+
url: "#{base_bd_bin_analysis_api_uri}/#{rest_call}",
|
49
|
+
headers: {
|
50
|
+
content_type: content_type,
|
51
|
+
authorization: "Bearer #{token}",
|
52
|
+
params: params
|
53
|
+
},
|
54
|
+
verify_ssl: false
|
55
|
+
)
|
56
|
+
|
57
|
+
when :get
|
58
|
+
response = rest_client.execute(
|
59
|
+
method: :get,
|
60
|
+
url: "#{base_bd_bin_analysis_api_uri}/#{rest_call}",
|
61
|
+
headers: {
|
62
|
+
content_type: content_type,
|
63
|
+
authorization: "Bearer #{token}",
|
64
|
+
params: params
|
65
|
+
},
|
66
|
+
verify_ssl: false
|
67
|
+
)
|
68
|
+
|
69
|
+
when :post
|
70
|
+
if http_body.key?(:multipart)
|
71
|
+
response = rest_client.execute(
|
72
|
+
method: :post,
|
73
|
+
url: "#{base_bd_bin_analysis_api_uri}/#{rest_call}",
|
74
|
+
headers: {
|
75
|
+
authorization: "Bearer #{token}"
|
76
|
+
},
|
77
|
+
payload: http_body,
|
78
|
+
verify_ssl: false
|
79
|
+
)
|
80
|
+
else
|
81
|
+
response = rest_client.execute(
|
82
|
+
method: :post,
|
83
|
+
url: "#{base_bd_bin_analysis_api_uri}/#{rest_call}",
|
84
|
+
headers: {
|
85
|
+
content_type: content_type,
|
86
|
+
authorization: "Bearer #{token}"
|
87
|
+
},
|
88
|
+
payload: http_body.to_json,
|
89
|
+
verify_ssl: false
|
90
|
+
)
|
91
|
+
end
|
92
|
+
|
93
|
+
when :put
|
94
|
+
if http_body.key?(:multipart)
|
95
|
+
response = rest_client.execute(
|
96
|
+
method: :put,
|
97
|
+
url: "#{base_bd_bin_analysis_api_uri}/#{rest_call}",
|
98
|
+
headers: {
|
99
|
+
authorization: "Bearer #{token}"
|
100
|
+
},
|
101
|
+
payload: http_body,
|
102
|
+
verify_ssl: false
|
103
|
+
)
|
104
|
+
else
|
105
|
+
response = rest_client.execute(
|
106
|
+
method: :post,
|
107
|
+
url: "#{base_bd_bin_analysis_api_uri}/#{rest_call}",
|
108
|
+
headers: {
|
109
|
+
content_type: content_type,
|
110
|
+
authorization: "Bearer #{token}"
|
111
|
+
},
|
112
|
+
payload: http_body.to_json,
|
113
|
+
verify_ssl: false
|
114
|
+
)
|
115
|
+
end
|
116
|
+
|
117
|
+
else
|
118
|
+
raise @@logger.error("Unsupported HTTP Method #{http_method} for #{self} Plugin")
|
119
|
+
end
|
120
|
+
response
|
121
|
+
rescue StandardError => e
|
122
|
+
case e.message
|
123
|
+
when '400 Bad Request', '404 Resource Not Found'
|
124
|
+
"#{e.message}: #{e.response}"
|
125
|
+
else
|
126
|
+
raise e
|
127
|
+
end
|
128
|
+
ensure
|
129
|
+
spinner.stop
|
130
|
+
end
|
131
|
+
|
132
|
+
# Supported Method Parameters::
|
133
|
+
# response = PWN::Plugins::BlackDuckBinaryAnalysis.get_groups(
|
134
|
+
# token: 'required - Bearer token'
|
135
|
+
# )
|
136
|
+
|
137
|
+
public_class_method def self.get_groups(opts = {})
|
138
|
+
token = opts[:token]
|
139
|
+
|
140
|
+
response = bd_bin_analysis_rest_call(
|
141
|
+
token: token,
|
142
|
+
rest_call: 'groups'
|
143
|
+
)
|
144
|
+
|
145
|
+
JSON.parse(response, symbolize_names: true)
|
146
|
+
rescue StandardError => e
|
147
|
+
raise e
|
148
|
+
end
|
149
|
+
|
150
|
+
# Supported Method Parameters::
|
151
|
+
# response = PWN::Plugins::BlackDuckBinaryAnalysis.upload_file(
|
152
|
+
# token: 'required - Bearer token',
|
153
|
+
# file: 'required - file to upload',
|
154
|
+
# purpose: 'optional - intended purpose of the uploaded documents (defaults to fine-tune'
|
155
|
+
# )
|
156
|
+
|
157
|
+
public_class_method def self.upload_file(opts = {})
|
158
|
+
token = opts[:token]
|
159
|
+
file = opts[:file]
|
160
|
+
raise "ERROR: #{file} not found." unless File.exist?(file)
|
161
|
+
|
162
|
+
purpose = opts[:purpose]
|
163
|
+
purpose ||= 'fine-tune'
|
164
|
+
|
165
|
+
http_body = {
|
166
|
+
multipart: true,
|
167
|
+
file: File.new(file, 'rb'),
|
168
|
+
purpose: purpose
|
169
|
+
}
|
170
|
+
|
171
|
+
response = bd_bin_analysis_rest_call(
|
172
|
+
http_method: :post,
|
173
|
+
token: token,
|
174
|
+
rest_call: 'files',
|
175
|
+
http_body: http_body
|
176
|
+
)
|
177
|
+
|
178
|
+
JSON.parse(response, symbolize_names: true)
|
179
|
+
rescue StandardError => e
|
180
|
+
raise e
|
181
|
+
end
|
182
|
+
|
183
|
+
# Author(s):: 0day Inc. <request.pentest@0dayinc.com>
|
184
|
+
|
185
|
+
public_class_method def self.authors
|
186
|
+
"AUTHOR(S):
|
187
|
+
0day Inc. <request.pentest@0dayinc.com>
|
188
|
+
"
|
189
|
+
end
|
190
|
+
|
191
|
+
# Display Usage for this Module
|
192
|
+
|
193
|
+
public_class_method def self.help
|
194
|
+
puts "USAGE:
|
195
|
+
response = #{self}.get_groups(
|
196
|
+
token: 'required - Bearer token'
|
197
|
+
)
|
198
|
+
|
199
|
+
response = #{self}.upload_file(
|
200
|
+
token: 'required - Black Duck Binary Analysis API token',
|
201
|
+
file: 'required - file to upload'
|
202
|
+
)
|
203
|
+
|
204
|
+
#{self}.authors
|
205
|
+
"
|
206
|
+
end
|
207
|
+
end
|
208
|
+
end
|
209
|
+
end
|
data/lib/pwn/plugins.rb
CHANGED
@@ -11,6 +11,7 @@ module PWN
|
|
11
11
|
autoload :BareSIP, 'pwn/plugins/baresip'
|
12
12
|
autoload :BasicAuth, 'pwn/plugins/basic_auth'
|
13
13
|
autoload :BeEF, 'pwn/plugins/beef'
|
14
|
+
autoload :BlackDuckBinaryAnalysis, 'pwn/plugins/black_duck_binary_analysis'
|
14
15
|
autoload :BurpSuite, 'pwn/plugins/burp_suite'
|
15
16
|
autoload :BusPirate, 'pwn/plugins/bus_pirate'
|
16
17
|
autoload :Char, 'pwn/plugins/char'
|
data/lib/pwn/version.rb
CHANGED
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
describe PWN::Plugins::BlackDuckBinaryAnalysis do
|
6
|
+
it 'should display information for authors' do
|
7
|
+
authors_response = PWN::Plugins::BlackDuckBinaryAnalysis
|
8
|
+
expect(authors_response).to respond_to :authors
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'should display information for existing help method' do
|
12
|
+
help_response = PWN::Plugins::BlackDuckBinaryAnalysis
|
13
|
+
expect(help_response).to respond_to :help
|
14
|
+
end
|
15
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pwn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.726
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- 0day Inc.
|
@@ -1183,7 +1183,6 @@ executables:
|
|
1183
1183
|
extensions: []
|
1184
1184
|
extra_rdoc_files: []
|
1185
1185
|
files:
|
1186
|
-
- ".each do |child_pid|"
|
1187
1186
|
- ".github/FUNDING.yml"
|
1188
1187
|
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
1189
1188
|
- ".gitignore"
|
@@ -1676,6 +1675,7 @@ files:
|
|
1676
1675
|
- lib/pwn/plugins/baresip.rb
|
1677
1676
|
- lib/pwn/plugins/basic_auth.rb
|
1678
1677
|
- lib/pwn/plugins/beef.rb
|
1678
|
+
- lib/pwn/plugins/black_duck_binary_analysis.rb
|
1679
1679
|
- lib/pwn/plugins/burp_suite.rb
|
1680
1680
|
- lib/pwn/plugins/bus_pirate.rb
|
1681
1681
|
- lib/pwn/plugins/char.rb
|
@@ -1986,6 +1986,7 @@ files:
|
|
1986
1986
|
- spec/lib/pwn/plugins/baresip_spec.rb
|
1987
1987
|
- spec/lib/pwn/plugins/basic_auth_spec.rb
|
1988
1988
|
- spec/lib/pwn/plugins/beef_spec.rb
|
1989
|
+
- spec/lib/pwn/plugins/black_duck_binary_analysis_spec.rb
|
1989
1990
|
- spec/lib/pwn/plugins/burp_suite_spec.rb
|
1990
1991
|
- spec/lib/pwn/plugins/bus_pirate_spec.rb
|
1991
1992
|
- spec/lib/pwn/plugins/char_spec.rb
|
data/.each do |child_pid|
DELETED
@@ -1,258 +0,0 @@
|
|
1
|
-
|
2
|
-
SSUUMMMMAARRYY OOFF LLEESSSS CCOOMMMMAANNDDSS
|
3
|
-
|
4
|
-
Commands marked with * may be preceded by a number, _N.
|
5
|
-
Notes in parentheses indicate the behavior if _N is given.
|
6
|
-
A key preceded by a caret indicates the Ctrl key; thus ^K is ctrl-K.
|
7
|
-
|
8
|
-
h H Display this help.
|
9
|
-
q :q Q :Q ZZ Exit.
|
10
|
-
---------------------------------------------------------------------------
|
11
|
-
|
12
|
-
MMOOVVIINNGG
|
13
|
-
|
14
|
-
e ^E j ^N CR * Forward one line (or _N lines).
|
15
|
-
y ^Y k ^K ^P * Backward one line (or _N lines).
|
16
|
-
f ^F ^V SPACE * Forward one window (or _N lines).
|
17
|
-
b ^B ESC-v * Backward one window (or _N lines).
|
18
|
-
z * Forward one window (and set window to _N).
|
19
|
-
w * Backward one window (and set window to _N).
|
20
|
-
ESC-SPACE * Forward one window, but don't stop at end-of-file.
|
21
|
-
d ^D * Forward one half-window (and set half-window to _N).
|
22
|
-
u ^U * Backward one half-window (and set half-window to _N).
|
23
|
-
ESC-) RightArrow * Right one half screen width (or _N positions).
|
24
|
-
ESC-( LeftArrow * Left one half screen width (or _N positions).
|
25
|
-
ESC-} ^RightArrow Right to last column displayed.
|
26
|
-
ESC-{ ^LeftArrow Left to first column.
|
27
|
-
F Forward forever; like "tail -f".
|
28
|
-
ESC-F Like F but stop when search pattern is found.
|
29
|
-
r ^R ^L Repaint screen.
|
30
|
-
R Repaint screen, discarding buffered input.
|
31
|
-
---------------------------------------------------
|
32
|
-
Default "window" is the screen height.
|
33
|
-
Default "half-window" is half of the screen height.
|
34
|
-
---------------------------------------------------------------------------
|
35
|
-
|
36
|
-
SSEEAARRCCHHIINNGG
|
37
|
-
|
38
|
-
/_p_a_t_t_e_r_n * Search forward for (_N-th) matching line.
|
39
|
-
?_p_a_t_t_e_r_n * Search backward for (_N-th) matching line.
|
40
|
-
n * Repeat previous search (for _N-th occurrence).
|
41
|
-
N * Repeat previous search in reverse direction.
|
42
|
-
ESC-n * Repeat previous search, spanning files.
|
43
|
-
ESC-N * Repeat previous search, reverse dir. & spanning files.
|
44
|
-
ESC-u Undo (toggle) search highlighting.
|
45
|
-
ESC-U Clear search highlighting.
|
46
|
-
&_p_a_t_t_e_r_n * Display only matching lines.
|
47
|
-
---------------------------------------------------
|
48
|
-
A search pattern may begin with one or more of:
|
49
|
-
^N or ! Search for NON-matching lines.
|
50
|
-
^E or * Search multiple files (pass thru END OF FILE).
|
51
|
-
^F or @ Start search at FIRST file (for /) or last file (for ?).
|
52
|
-
^K Highlight matches, but don't move (KEEP position).
|
53
|
-
^R Don't use REGULAR EXPRESSIONS.
|
54
|
-
^W WRAP search if no match found.
|
55
|
-
---------------------------------------------------------------------------
|
56
|
-
|
57
|
-
JJUUMMPPIINNGG
|
58
|
-
|
59
|
-
g < ESC-< * Go to first line in file (or line _N).
|
60
|
-
G > ESC-> * Go to last line in file (or line _N).
|
61
|
-
p % * Go to beginning of file (or _N percent into file).
|
62
|
-
t * Go to the (_N-th) next tag.
|
63
|
-
T * Go to the (_N-th) previous tag.
|
64
|
-
{ ( [ * Find close bracket } ) ].
|
65
|
-
} ) ] * Find open bracket { ( [.
|
66
|
-
ESC-^F _<_c_1_> _<_c_2_> * Find close bracket _<_c_2_>.
|
67
|
-
ESC-^B _<_c_1_> _<_c_2_> * Find open bracket _<_c_1_>.
|
68
|
-
---------------------------------------------------
|
69
|
-
Each "find close bracket" command goes forward to the close bracket
|
70
|
-
matching the (_N-th) open bracket in the top line.
|
71
|
-
Each "find open bracket" command goes backward to the open bracket
|
72
|
-
matching the (_N-th) close bracket in the bottom line.
|
73
|
-
|
74
|
-
m_<_l_e_t_t_e_r_> Mark the current top line with <letter>.
|
75
|
-
M_<_l_e_t_t_e_r_> Mark the current bottom line with <letter>.
|
76
|
-
'_<_l_e_t_t_e_r_> Go to a previously marked position.
|
77
|
-
'' Go to the previous position.
|
78
|
-
^X^X Same as '.
|
79
|
-
ESC-M_<_l_e_t_t_e_r_> Clear a mark.
|
80
|
-
---------------------------------------------------
|
81
|
-
A mark is any upper-case or lower-case letter.
|
82
|
-
Certain marks are predefined:
|
83
|
-
^ means beginning of the file
|
84
|
-
$ means end of the file
|
85
|
-
---------------------------------------------------------------------------
|
86
|
-
|
87
|
-
CCHHAANNGGIINNGG FFIILLEESS
|
88
|
-
|
89
|
-
:e [_f_i_l_e] Examine a new file.
|
90
|
-
^X^V Same as :e.
|
91
|
-
:n * Examine the (_N-th) next file from the command line.
|
92
|
-
:p * Examine the (_N-th) previous file from the command line.
|
93
|
-
:x * Examine the first (or _N-th) file from the command line.
|
94
|
-
:d Delete the current file from the command line list.
|
95
|
-
= ^G :f Print current file name.
|
96
|
-
---------------------------------------------------------------------------
|
97
|
-
|
98
|
-
MMIISSCCEELLLLAANNEEOOUUSS CCOOMMMMAANNDDSS
|
99
|
-
|
100
|
-
-_<_f_l_a_g_> Toggle a command line option [see OPTIONS below].
|
101
|
-
--_<_n_a_m_e_> Toggle a command line option, by name.
|
102
|
-
__<_f_l_a_g_> Display the setting of a command line option.
|
103
|
-
___<_n_a_m_e_> Display the setting of an option, by name.
|
104
|
-
+_c_m_d Execute the less cmd each time a new file is examined.
|
105
|
-
|
106
|
-
!_c_o_m_m_a_n_d Execute the shell command with $SHELL.
|
107
|
-
|XX_c_o_m_m_a_n_d Pipe file between current pos & mark XX to shell command.
|
108
|
-
s _f_i_l_e Save input to a file.
|
109
|
-
v Edit the current file with $VISUAL or $EDITOR.
|
110
|
-
V Print version number of "less".
|
111
|
-
---------------------------------------------------------------------------
|
112
|
-
|
113
|
-
OOPPTTIIOONNSS
|
114
|
-
|
115
|
-
Most options may be changed either on the command line,
|
116
|
-
or from within less by using the - or -- command.
|
117
|
-
Options may be given in one of two forms: either a single
|
118
|
-
character preceded by a -, or a name preceded by --.
|
119
|
-
|
120
|
-
-? ........ --help
|
121
|
-
Display help (from command line).
|
122
|
-
-a ........ --search-skip-screen
|
123
|
-
Search skips current screen.
|
124
|
-
-A ........ --SEARCH-SKIP-SCREEN
|
125
|
-
Search starts just after target line.
|
126
|
-
-b [_N] .... --buffers=[_N]
|
127
|
-
Number of buffers.
|
128
|
-
-B ........ --auto-buffers
|
129
|
-
Don't automatically allocate buffers for pipes.
|
130
|
-
-c ........ --clear-screen
|
131
|
-
Repaint by clearing rather than scrolling.
|
132
|
-
-d ........ --dumb
|
133
|
-
Dumb terminal.
|
134
|
-
-D xx_c_o_l_o_r . --color=xx_c_o_l_o_r
|
135
|
-
Set screen colors.
|
136
|
-
-e -E .... --quit-at-eof --QUIT-AT-EOF
|
137
|
-
Quit at end of file.
|
138
|
-
-f ........ --force
|
139
|
-
Force open non-regular files.
|
140
|
-
-F ........ --quit-if-one-screen
|
141
|
-
Quit if entire file fits on first screen.
|
142
|
-
-g ........ --hilite-search
|
143
|
-
Highlight only last match for searches.
|
144
|
-
-G ........ --HILITE-SEARCH
|
145
|
-
Don't highlight any matches for searches.
|
146
|
-
-h [_N] .... --max-back-scroll=[_N]
|
147
|
-
Backward scroll limit.
|
148
|
-
-i ........ --ignore-case
|
149
|
-
Ignore case in searches that do not contain uppercase.
|
150
|
-
-I ........ --IGNORE-CASE
|
151
|
-
Ignore case in all searches.
|
152
|
-
-j [_N] .... --jump-target=[_N]
|
153
|
-
Screen position of target lines.
|
154
|
-
-J ........ --status-column
|
155
|
-
Display a status column at left edge of screen.
|
156
|
-
-k [_f_i_l_e] . --lesskey-file=[_f_i_l_e]
|
157
|
-
Use a lesskey file.
|
158
|
-
-K ........ --quit-on-intr
|
159
|
-
Exit less in response to ctrl-C.
|
160
|
-
-L ........ --no-lessopen
|
161
|
-
Ignore the LESSOPEN environment variable.
|
162
|
-
-m -M .... --long-prompt --LONG-PROMPT
|
163
|
-
Set prompt style.
|
164
|
-
-n -N .... --line-numbers --LINE-NUMBERS
|
165
|
-
Don't use line numbers.
|
166
|
-
-o [_f_i_l_e] . --log-file=[_f_i_l_e]
|
167
|
-
Copy to log file (standard input only).
|
168
|
-
-O [_f_i_l_e] . --LOG-FILE=[_f_i_l_e]
|
169
|
-
Copy to log file (unconditionally overwrite).
|
170
|
-
-p [_p_a_t_t_e_r_n] --pattern=[_p_a_t_t_e_r_n]
|
171
|
-
Start at pattern (from command line).
|
172
|
-
-P [_p_r_o_m_p_t] --prompt=[_p_r_o_m_p_t]
|
173
|
-
Define new prompt.
|
174
|
-
-q -Q .... --quiet --QUIET --silent --SILENT
|
175
|
-
Quiet the terminal bell.
|
176
|
-
-r -R .... --raw-control-chars --RAW-CONTROL-CHARS
|
177
|
-
Output "raw" control characters.
|
178
|
-
-s ........ --squeeze-blank-lines
|
179
|
-
Squeeze multiple blank lines.
|
180
|
-
-S ........ --chop-long-lines
|
181
|
-
Chop (truncate) long lines rather than wrapping.
|
182
|
-
-t [_t_a_g] .. --tag=[_t_a_g]
|
183
|
-
Find a tag.
|
184
|
-
-T [_t_a_g_s_f_i_l_e] --tag-file=[_t_a_g_s_f_i_l_e]
|
185
|
-
Use an alternate tags file.
|
186
|
-
-u -U .... --underline-special --UNDERLINE-SPECIAL
|
187
|
-
Change handling of backspaces.
|
188
|
-
-V ........ --version
|
189
|
-
Display the version number of "less".
|
190
|
-
-w ........ --hilite-unread
|
191
|
-
Highlight first new line after forward-screen.
|
192
|
-
-W ........ --HILITE-UNREAD
|
193
|
-
Highlight first new line after any forward movement.
|
194
|
-
-x [_N[,...]] --tabs=[_N[,...]]
|
195
|
-
Set tab stops.
|
196
|
-
-X ........ --no-init
|
197
|
-
Don't use termcap init/deinit strings.
|
198
|
-
-y [_N] .... --max-forw-scroll=[_N]
|
199
|
-
Forward scroll limit.
|
200
|
-
-z [_N] .... --window=[_N]
|
201
|
-
Set size of window.
|
202
|
-
-" [_c[_c]] . --quotes=[_c[_c]]
|
203
|
-
Set shell quote characters.
|
204
|
-
-~ ........ --tilde
|
205
|
-
Don't display tildes after end of file.
|
206
|
-
-# [_N] .... --shift=[_N]
|
207
|
-
Set horizontal scroll amount (0 = one half screen width).
|
208
|
-
--file-size
|
209
|
-
Automatically determine the size of the input file.
|
210
|
-
--follow-name
|
211
|
-
The F command changes files if the input file is renamed.
|
212
|
-
--incsearch
|
213
|
-
Search file as each pattern character is typed in.
|
214
|
-
--line-num-width=N
|
215
|
-
Set the width of the -N line number field to N characters.
|
216
|
-
--mouse
|
217
|
-
Enable mouse input.
|
218
|
-
--no-keypad
|
219
|
-
Don't send termcap keypad init/deinit strings.
|
220
|
-
--no-histdups
|
221
|
-
Remove duplicates from command history.
|
222
|
-
--rscroll=C
|
223
|
-
Set the character used to mark truncated lines.
|
224
|
-
--save-marks
|
225
|
-
Retain marks across invocations of less.
|
226
|
-
--status-col-width=N
|
227
|
-
Set the width of the -J status column to N characters.
|
228
|
-
--use-backslash
|
229
|
-
Subsequent options use backslash as escape char.
|
230
|
-
--use-color
|
231
|
-
Enables colored text.
|
232
|
-
--wheel-lines=N
|
233
|
-
Each click of the mouse wheel moves N lines.
|
234
|
-
|
235
|
-
|
236
|
-
---------------------------------------------------------------------------
|
237
|
-
|
238
|
-
LLIINNEE EEDDIITTIINNGG
|
239
|
-
|
240
|
-
These keys can be used to edit text being entered
|
241
|
-
on the "command line" at the bottom of the screen.
|
242
|
-
|
243
|
-
RightArrow ..................... ESC-l ... Move cursor right one character.
|
244
|
-
LeftArrow ...................... ESC-h ... Move cursor left one character.
|
245
|
-
ctrl-RightArrow ESC-RightArrow ESC-w ... Move cursor right one word.
|
246
|
-
ctrl-LeftArrow ESC-LeftArrow ESC-b ... Move cursor left one word.
|
247
|
-
HOME ........................... ESC-0 ... Move cursor to start of line.
|
248
|
-
END ............................ ESC-$ ... Move cursor to end of line.
|
249
|
-
BACKSPACE ................................ Delete char to left of cursor.
|
250
|
-
DELETE ......................... ESC-x ... Delete char under cursor.
|
251
|
-
ctrl-BACKSPACE ESC-BACKSPACE ........... Delete word to left of cursor.
|
252
|
-
ctrl-DELETE .... ESC-DELETE .... ESC-X ... Delete word under cursor.
|
253
|
-
ctrl-U ......... ESC (MS-DOS only) ....... Delete entire line.
|
254
|
-
UpArrow ........................ ESC-k ... Retrieve previous command line.
|
255
|
-
DownArrow ...................... ESC-j ... Retrieve next command line.
|
256
|
-
TAB ...................................... Complete filename & cycle.
|
257
|
-
SHIFT-TAB ...................... ESC-TAB Complete filename & reverse cycle.
|
258
|
-
ctrl-L ................................... Complete filename, list all.
|