Overview

This page is designed to give minor examples, and general principles for renaming multiple files at once from the command line based on given criteria and wildcards. Makes use of a command line for loop and the sed command.

Renaming multiple fastq files

  1. Assume you have downloaded multiple fastq files which are of format: Samplename-Lane-runID-etc-etc.fastq
  2. for f in *.fastq;do new_name=$(echo $file|sed 's/-*/.fastq/'); mv -i $file $new_name;done
  3. will rename all files to Samplename.fastq.
    • Generic explanation in parts:
    • for f in *.fastq;
      • "for" is the start of a for loop which allows you to do the same thing to multiple files sequentially
      • generate a generic variable named "f" which is a list of all files in the current directory that end in ".fastq"
    • do new_name=$(echo $file|
      • do is what you want to do with each of the entries in the for loop
      • generate a new variable named "new name" with the starting point of the old file name, change the name based on the following sed command.

    • do "new variable name"=$(echo $"variable name"|sed 's/what to find/what to replace/');mv $"new variable name" $"variable name";done

-- Main.DanielDeatherage - 21 Aug 2014

Edit | Attach | Watch | Print version | History: r6 | r4 < r3 < r2 < r1 | Backlinks | Raw View | More topic actions...

 Barrick Lab  >  ComputationList  >  ProtocolsMassRename

Contributors to this topic Edit topic DanielDeatherage
Topic revision: r2 - 2014-08-27 - 02:41:49 - Main.DanielDeatherage
 
This site is powered by the TWiki collaboration platform Powered by Perl This site is powered by the TWiki collaboration platformCopyright ©2024 Barrick Lab contributing authors. Ideas, requests, problems? Send feedback