code: def fastqc_rename(self, input_bam, output_dir, sample_name):
          
          cmds = list()
          initial = os.path.splitext(os.path.basename(input_bam))[0]
          cmd1 = self.fastqc(input_bam, output_dir)
          cmds.append(cmd1)
          cmd2 = "if [[ ! -s {1}_fastqc.html ]]; then mv {0}_fastqc.html {1}_fastqc.html; mv {0}_fastqc.zip {1}_fastqc.zip; fi".format(
              os.path.join(output_dir, initial), os.path.join(output_dir, sample_name))
          cmds.append(cmd2)
          return cmds
docs: Create pair of commands to run fastqc and organize files.
  
          The first command returned is the one that actually runs fastqc when
          it's executed; the second moves the output files to the output
          folder for the sample indicated.
  
          :param str input_bam: Path to file for which to run fastqc.
          :param str output_dir: Path to folder in which fastqc output will be
              written, and within which the sample's output folder lives.
          :param str sample_name: Sample name, which determines subfolder within
              output_dir for the fastqc files.
          :return list[str]: Pair of commands, to run fastqc and then move the files to
              their intended destination based on sample name.