This is an effort at doing it 'properly', counting brackets and fields. I had to cheat a lot, by converting it into something more readily understandable, stripping out all whitespace and newlines then adding my own where they look appropriate. This makes it consistent enough to handle in a shell language.
Code:
#!/bin/bash
INPUTFILE="data"
# Strip out all newlines and whitespace, flattening it into something
# we can process line-by-line.
# Then 'xargs' eats quotes.
# Then we feed it into awk, which parses it counting { } ( ),
# and extracts the fields of interest.
sed 's/[)][ \r\n\t]*;/)/g;s/[{}();]/ & /g' "$INPUTFILE" |
tr -s ' \n' '\n' | xargs -n 1 | awk '
/;/ { L=0 ; next }
/[{(]/ {
if(DEP == 1) PDNAME[++PDN]=STR[1]
if(S ~ /#surfaces$/) PNAME[++PN]=STR[1]
S=S"#"STR[1]
DEP++
L=0
# printf(">> %s\n", S);
next
}
/[})]/ {
if(S ~ /#fields$/) {
C=""
for(N=1; N<=L; N++) C = C " " STR[N]
FIELDS[++F]=substr(C,2);
}
L=0
sub(/#[^#]*$/, "", S);
DEP--
# printf("<< %s\n", S);
next
}
{ STR[++L]=$0 }
END {
printf("planename=(");
for(N=1; N<=PN; N++) printf(" \"%s\"", PNAME[N]);
printf(" )\n");
printf("planedictname=(");
for(N=1; N<=PDN; N++) printf(" \"%s\"", PDNAME[N]);
printf(" )\n");
printf("fields=(");
for(N=1; N<=F; N++) printf(" \"%s\"", FIELDS[N]);
printf(" )\n");
}' > /tmp/$$
# Read this into the shell to set the arrays
. /tmp/$$
# Remove temp file
rm -f /tmp/$$
echo "planedictname ${planedictname[@]}"
echo "planename ${planename[@]}"
echo "fields ${fields[@]}"
Code:
$ ./trans.sh
planedictname planeDictName planeDictName2
planename planeName1 planeName2
fields p U T p U
$
Hi,
I need help with Sed or AWk command.i want to remove all the numerals from the file name.These files are stored within a text file and after the numerals are removed,i need to redirect its output to another new .txt file.
Input:
aa_1002985_952.xml
aa_bb_032207.txt... (5 Replies)
Hi what would be the sed equivalent of this awk command:
awk '/$getsn/{getline;next}{print}' file
It deletes the variable found and the next line after it in a file.
Thanks (3 Replies)
Sorry for the duplicate thread this one is similar to the one in
https://www.unix.com/shell-programming-scripting/88132-awk-sed-script-read-values-parameter-files.html#post302255121
Since there were no responses on the parent thread since it got resolved partially i thought to open the new... (4 Replies)
Could you interpret the following sed and awk command for me?
command:
cat tempfile2 |sed "s/\(BUILD-3-.*-\.-\)\(.*\..*\..*\)/\2/" | awk '{printf "%-8.8s %-23.23s %-30.30s %-50.50s\n", $1,$2,$3,substr($0,index($0,$4))}' > outfile2 2>/dev/null
input:data in tempfile2... (5 Replies)
Hi All,
I have a file which has following lines :
- Deploy XXX application <server-address>
- info <server-address>
- Deploy XXX application <server-address>
- info <server-address>
- Deploy XXX application <server-address>
- info <server-address>
I want output like this way in... (8 Replies)
My input file gfile values is CTRY=GM&PROJTYPE=SP&PROJECTTYPE=Small+Project
If i am giving PROJECTTYPE then it must give Small Project
awk -F"&" '{for (i=1; i<=NF; i++) if ($i ~ "^"PAT) {sub ("^"PAT"=", "", $i); sed 's/'+'/""/' $i ; print $i }}' PAT=$1 ... (6 Replies)
Hi,
I am running a script sample.sh in bash environment .In the script i am using sed and awk commands which when executed individually from terminal they are getting executed normally but when i give these sed and awk commands in the script it is giving the below errors :-
./sample.sh: line... (12 Replies)
Dear ALL,
I am still struggling with some basic sed operations.
I want to change path in a file as shown below:
case_OM = PV4Reader( FileName='/home/linuxUser/demoCases/s1/case/case.OM' )
to
case_OM = PV4Reader( FileName='/home/linuxUser/demoCases/s2/case/case.OM' )
In this file there... (5 Replies)
Hi All,
This is my first thread. Hopefully you guys can help me out. I have a csv file, that provides access to managers to a tool. The file is loaded onto our server containing all the assc id's with a trailing comma.
For ex: 182950,
123456,
However, we receive a file that... (8 Replies)
Discussion started by: Prateek Dubey
8 Replies
LEARN ABOUT MOJAVE
modules.dep
MODULES.DEP(5) modules.dep MODULES.DEP(5)NAME
modules.dep, modules.dep.bin - Module dependency information
SYNOPSIS
/lib/modules/modules.dep
/lib/modules/modules.dep.bin
DESCRIPTION
modules.dep.bin is a binary file generated by depmod listing the dependencies for every module in the directories under
/lib/modules/version. It is used by kmod tools such as modprobe and libkmod.
Its text counterpar is located in the same directory with the name modules.dep. The text version is maintained only for easy of reading by
humans and is in no way used by any kmod tool.
These files are not intended for editing or use by any additional utilities as their format is subject to change in the future. You should
use the modinfo(8) command to obtain information about modules in a future proof and compatible fashion rather than touching these files.
COPYRIGHT
This manual page originally Copyright 2002, Rusty Russell, IBM Corporation. Maintained by Jon Masters and others.
SEE ALSO depmod(8), modprobe(8)AUTHORS
Jon Masters <jcm@jonmasters.org>
Developer
Lucas De Marchi <lucas.de.marchi@gmail.com>
Developer
kmod 01/28/2018 MODULES.DEP(5)