inital P01 version published - Instructions are available under Moodle
This commit is contained in:
parent
a7eda8d4b2
commit
2e878d8489
|
@ -0,0 +1,26 @@
|
|||
#!/bin/bash
|
||||
|
||||
# produces a tabular output of all executables as found over the $PATH environment variable
|
||||
# - output format: [1-based index of $PATH entry]:[$PATH entry]:[name of the executable]
|
||||
# - e.g. 6:/bin:bash
|
||||
# - the first argument (if given) is used as alternative to $PATH (e.g. for testing purposes)
|
||||
# usage: ./get-exec-list-arg.sh # examines $PATH
|
||||
# usage: ./get-exec-list-arg.sh "$PATH" # equivalent to the above call
|
||||
# usage: ./get-exec-list-arg.sh ".:~/bin" # examines the current directory (.) and ~/bin
|
||||
|
||||
# argument handling
|
||||
path="$1"
|
||||
[ -n "$path" ] || path="$PATH"
|
||||
|
||||
# input-field-separator: tells the shell to split in the 'for' loop the $var by ":"
|
||||
IFS=":"
|
||||
|
||||
for p in $path
|
||||
do
|
||||
i=$((i+1))
|
||||
[ -n "$p" ] || p="."
|
||||
if [ -d "$p" ] && [ -x "$p" ]
|
||||
then
|
||||
find -L "$p" -maxdepth 1 -type f -executable -printf "$i:%h:%f\n" 2>/dev/null
|
||||
fi
|
||||
done
|
|
@ -0,0 +1,35 @@
|
|||
#!/bin/bash
|
||||
|
||||
# produces a crude HTML table from a tabular file (given on stdin) with columns separated by ":"
|
||||
# usage: tab2html < inbut.txt > output.html
|
||||
|
||||
awk $* -- '
|
||||
BEGIN {
|
||||
FS=":" # field-separator: which character separats fields in a record (i.e. in a line)
|
||||
print "<!DOCTYPE html>"
|
||||
print "<html>"
|
||||
print " <head>"
|
||||
print " <style>"
|
||||
print " table{border:1px solid black;border-collapse:collapse;}"
|
||||
print " tr:nth-child(even){background-color: #f2f2f2;}"
|
||||
print " td{border:1px solid black;padding:15px;}"
|
||||
print " </style>"
|
||||
print " <title>Tabular Data</title>"
|
||||
print " </head>"
|
||||
print " <body>"
|
||||
print " <div style=\"overflow-x:auto;\">"
|
||||
print " <table>"
|
||||
}
|
||||
{
|
||||
print " <tr>"
|
||||
for (i = 1; i <= NF; i++) { print " <td>"$i"</td>" }
|
||||
print " </tr>"
|
||||
}
|
||||
END {
|
||||
print " </table>"
|
||||
print " </div>"
|
||||
print " </body>"
|
||||
print "</html>"
|
||||
}
|
||||
'
|
||||
|
|
@ -0,0 +1,21 @@
|
|||
#!/bin/bash
|
||||
|
||||
# produces an XML file from a tabular file (given on stdin) with columns separated by ":"
|
||||
# usage: tab2xml < inbut.txt > output.xml
|
||||
|
||||
awk $* -- '
|
||||
BEGIN {
|
||||
FS=":" # field-separator: which character separats fields in a record (i.e. in a line)
|
||||
print "<?xml version=\"1.0\" standalone=\"yes\"?>"
|
||||
print "<Table>"
|
||||
}
|
||||
{
|
||||
print " <Row>"
|
||||
for (i = 1; i <= NF; i++) { print " <Col>"$i"</Col>" }
|
||||
print " </Row>"
|
||||
}
|
||||
END {
|
||||
print "</Table>"
|
||||
}
|
||||
'
|
||||
|
Loading…
Reference in New Issue