text: user9732: I want to create custom tracks from these files
  I can add the line : track type=narrowPeak name=“narrowPeak” manually by opening it with text editor:
  track type=narrowPeak name=“narrowPeak”
  
  but I wonder if there is no simple way to do it with code- to open all files that end with bed and add them this line.
  Didnt find this option in bed tools, If it is possible to add the name extracting it from the file name it would be amazing.
  Many thanks
  
  user9693: I don't think you need to go to R or Python to do that. In bash
  set -euxo pipefail
  for f in *.bed
  do
    bn="$(basename ${f})"
    on="${bn%%.bed}_with_header.bed"
    echo 'track type=narrowPeak name="narrowPeak"' > "${on}"
    cat "${f}" >> "${on}"
  done
  
  EDIT: I just read you want to set the name based on the filename.
  EDIT2: And also to add an arbitrary directory
  set -euxo pipefail
  
  INDIR="/path/to/bedfiles"
  
  for f in $(find "${INDIR}" -name "*.bed")
  do
    bn=$(basename "${f}")
    on="${bn%%.bed}_with_header.bed"
    dn=$(dirname "${f}")
    echo "track type=narrowPeak name=\"${bn}\"" > "${dn}"/"${on}"
    cat "${f}" >> "${dn}"/"${on}"
  done
  
  
original_text: 9732: <p>I want to create custom tracks from these<a href="https://i.stack.imgur.com/NqJjt.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/NqJjt.png" alt="enter image description here" /></a> files</p>
  <p>I can add the line : track type=narrowPeak name=“narrowPeak” manually by opening it with text editor:
  track type=narrowPeak name=“narrowPeak”
  <a href="https://i.stack.imgur.com/kl8KN.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/kl8KN.png" alt="enter image description here" /></a>
  but I wonder if there is no simple way to do it with code- to open all files that end with bed and add them this line.
  Didnt find this option in bed tools, If it is possible to add the name extracting it from the file name it would be amazing.</p>
  <p>Many thanks</p>
   9693: <p>I don't think you need to go to R or Python to do that. In bash</p>
  <pre><code>set -euxo pipefail
  for f in *.bed
  do
    bn=&quot;$(basename ${f})&quot;
    on=&quot;${bn%%.bed}_with_header.bed&quot;
    echo 'track type=narrowPeak name=&quot;narrowPeak&quot;' &gt; &quot;${on}&quot;
    cat &quot;${f}&quot; &gt;&gt; &quot;${on}&quot;
  done
  </code></pre>
  <p>EDIT: I just read you want to set the name based on the filename.</p>
  <p>EDIT2: And also to add an arbitrary directory</p>
  <pre><code>set -euxo pipefail
  
  INDIR=&quot;/path/to/bedfiles&quot;
  
  for f in <span class="math-container">$(find "$</span>{INDIR}&quot; -name &quot;*.bed&quot;)
  do
    bn=<span class="math-container">$(basename "$</span>{f}&quot;)
    on=&quot;<span class="math-container">${bn%%.bed}_with_header.bed"
    dn=$</span>(dirname &quot;<span class="math-container">${f}")
    echo "track type=narrowPeak name=\"$</span>{bn}\&quot;&quot; &gt; &quot;<span class="math-container">${dn}"/"$</span>{on}&quot;
    cat &quot;<span class="math-container">${f}" &gt;&gt; "$</span>{dn}&quot;/&quot;${on}&quot;
  done
  </code></pre>
  