Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
script_factory
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Fabien Rozar
script_factory
Commits
f9cee05c
Commit
f9cee05c
authored
Feb 29, 2016
by
frozar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[DEV] Add a new script to sort subroutine of a file by length.
parent
da0fa083
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
0 deletions
+24
-0
get_subroutine_len.sh
get_subroutine_len.sh
+24
-0
No files found.
get_subroutine_len.sh
0 → 100755
View file @
f9cee05c
#!/bin/bash
usage
(){
# display the number of argument given
# echo $#
echo
" Usage:"
$0
"<file_name>"
}
if
[
$#
-ne
1
]
then
usage
exit
-1
fi
f
=
$1
sub_names
=
`
grep
-i
subroutine
$f
|
grep
-v
-e
" *
\!
.*"
-e
" *end *subroutine"
|
grep
subroutine | python
-c
"import sys; l = map(lambda x: x.split(), sys.stdin.readlines()); print '
\n
'.join(map(lambda x : x[1], l ))"
|
cut
-d
"("
-f1
`
(
for
sub
in
${
sub_names
}
do
beg
=
`
grep
-ni
"subroutine"
$f
|
grep
"
${
sub
}
"
-A1
|
head
-n1
|
cut
-d
":"
-f1
`
end
=
`
grep
-ni
"subroutine"
$f
|
grep
"
${
sub
}
"
-A1
|
tail
-n1
|
cut
-d
":"
-f1
`
echo
-e
"
$((
$end
-
$beg
+
1
))
\t
:
$sub
"
done
)
|
sort
-rn
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment