Skip to main content
Ensure that the extension dot is the last.
Source Link
QuartzCristal
  • 2.1k
  • 5
  • 25

Try :

awk '  FNR==1 {  f=FILENAME;
                 sub(/\.[^.*$]*$/,"",f);
                 printf "%s%s\t",aline,f;
                 aline="\n";
                 s=""
       }
       ($3=="patho" || $3=="likely_patho"){
                 printf "%s%s",s,$2;
                 s="; "
       }
       END{print ""}
    ' ./*.txt

Try :

awk '  FNR==1 {  f=FILENAME;
                 sub(/\..*$/,"",f);
                 printf "%s%s\t",aline,f;
                 aline="\n";
                 s=""
       }
       ($3=="patho" || $3=="likely_patho"){
                 printf "%s%s",s,$2;
                 s="; "
       }
       END{print ""}
    ' ./*.txt

Try :

awk '  FNR==1 {  f=FILENAME;
                 sub(/\.[^.]*$/,"",f);
                 printf "%s%s\t",aline,f;
                 aline="\n";
                 s=""
       }
       ($3=="patho" || $3=="likely_patho"){
                 printf "%s%s",s,$2;
                 s="; "
       }
       END{print ""}
    ' ./*.txt
added 2 characters in body
Source Link
QuartzCristal
  • 2.1k
  • 5
  • 25

Try :

awk '  FNR==1 {  f=FILENAME;
                 sub(/\..*$/,"",f);
                 printf "%s%s\t",aline,f;
                 aline="\n";
                 s=""
       }
       ($3=="patho" || $3=="likely_patho"){
                 printf "%s%s",s,$2;
                 s="; "
       }
       END{print ""}
    ' ./*.txt

Try :

awk '  FNR==1 {  f=FILENAME;
                 sub(/\..*$/,"",f);
                 printf "%s%s\t",aline,f;
                 aline="\n";
                 s=""
       }
       ($3=="patho" || $3=="likely_patho"){
                 printf "%s%s",s,$2;
                 s="; "
       }
       END{print ""}
    ' *.txt

Try :

awk '  FNR==1 {  f=FILENAME;
                 sub(/\..*$/,"",f);
                 printf "%s%s\t",aline,f;
                 aline="\n";
                 s=""
       }
       ($3=="patho" || $3=="likely_patho"){
                 printf "%s%s",s,$2;
                 s="; "
       }
       END{print ""}
    ' ./*.txt
deleted 109 characters in body
Source Link
QuartzCristal
  • 2.1k
  • 5
  • 25

Try (in GNU awk):

awk '  FNR==1 {  f=FILENAME;
      FILENAME!=oldfile  {printf "%s",FILENAME; oldfile=FILENAME}
      $3~ sub(/patho\..*$/,"",f);
         {printf "; %s"      printf "%s%s\t",$2}aline,f;
      ENDFILE{print ""}
    ' *.txt

Or, in any awk:

awk '  FILENAME!=oldfile  {aline="\n";
           oldfile=f=FILENAME;      s=""
       }
      sub (/\..*$/,"",f$3=="patho" || $3=="likely_patho");{
                 printf "%s%s",alines,f;$2;
           aline="\n"
      s="; }"
       $3~/patho/{ printf "; %s",$2 }
       END{print ""}
     ' *.txt

Try (in GNU awk):

awk '
      FILENAME!=oldfile  {printf "%s",FILENAME; oldfile=FILENAME}
      $3~/patho/         {printf "; %s",$2}
      ENDFILE{print ""}
    ' *.txt

Or, in any awk:

awk '  FILENAME!=oldfile  {
           oldfile=f=FILENAME;
           sub(/\..*$/,"",f);
           printf "%s%s",aline,f;
           aline="\n"
       }
       $3~/patho/{ printf "; %s",$2 }
       END{print ""}
     ' *.txt

Try :

awk '  FNR==1 {  f=FILENAME;
                 sub(/\..*$/,"",f);
                 printf "%s%s\t",aline,f;
                 aline="\n";
                 s=""
       }
       ($3=="patho" || $3=="likely_patho"){
                 printf "%s%s",s,$2;
                 s="; "
       }
       END{print ""}
    ' *.txt
added 252 characters in body
Source Link
QuartzCristal
  • 2.1k
  • 5
  • 25
Loading
Source Link
QuartzCristal
  • 2.1k
  • 5
  • 25
Loading