I am writing a basic shell script to go out and rename files in a filesystem then scp them to a server. The problem is that there are 11 directories and files. I know I can write this 2 ways, one way the long way and one way the short way. I know how to do the long way... I'm curious about the short way. Here is the basic script I've got so far:
I didn't go on and copy the parts I am wanting to do... since it seems like I can do this easier via some for loop and an array. I'm just not sure how to do that... still learning scripting Thanks.
Btw... the files won't be called file1,2,3,4,5 for the File Name section and also directories. I'm using those names as examples for now.
:confused: How can i rename a file 'x.log' to 'x_20020512 072909.log'
:eek: i'm using perl, with system command from a unix web server, and need to timestamp my logs if the above format (filename _ year month day hr min sec .log) (9 Replies)
hey all,
I have files in the format of
ABCD20061101
and
ABCDEF20061101
in one directory, I would like to change all ABCD20061101 to ABCDEF20061101 and the problem is if I do a simple pattern match of ABCD, then those ABCDEF20061101 would also... (2 Replies)
Hi,
I'm not very experienced in shell scripting and that's probably why I came across the following problem:
I do have several hundred pairs of text files (PF00x.spl and PF00x.shd) where the first file (PF00x.spl) needs to be renamed according a string that is included in the second file... (12 Replies)
Hi Guys,
I have to rename about 180 files in different folders in linux. For example,
abc_110117.txt
eff_110117.txt
zzz_110117.txt
After renaming the files, these files should like like
abc.txt
eff.txt
zzz.txt
I created a small script to rename the files like
ls... (2 Replies)
I have various .sh and .pl files in one directory. I want to rename all the .sh files to .pl
i.e testscript.sh --> testscript.pl
I am trying to use mv *.sh *.pl
It doesnt work though!! (3 Replies)
Hi Experts,
I am new to Unix i wrote below code to rename if the file size less than 8MB.
I might have more than one file to rename sometimes:wall:.
Please help me in writing the code for multiple files.
Eg:- 071720112200.file001 and 071820112200.file001
Single File... (1 Reply)
Hi,
I would like to rename several files, for example:
MSIRP_CatastropheLog_Data_Extract_-_TCAPMI_SMB_20111116_040028.txt
MSIRP_CatastropheLog_Data_Extract_-_TCAPMI_SMB_20111117_040023.txt
MSIRP_CatastropheLog_Data_Extract_-_TCAPMI_SMB_20111118_040039.txt... (3 Replies)
Hi all,
I have a many folders with zipped files in them. The zipped files are txt files from different folders. The txt files have the same names. If i try to
find . -type f -name "*.zip" -exec cp -R {} /myhome/ZIP \; it fails since the ZIP files from different folders have the same names and... (2 Replies)
I am getting some files with this mask:
aaaa_SP_bbb.txt
aaaa_FX_bbbb.txt
aaaabbbb.txt
I want to rename the files containing:
_SP_ -> Rename - >> fileSP.TXT
_FX_ -> Rename - >> fileFX.txt
and other file that does not contain these words rename them:
filenamexx.txt
as I... (4 Replies)
Hey guys,
I have wrote the following script to apply a module named "trinity" on my files. (it takes two input files and spit a trinity.fasta as output)
#!/bin/bash -l
#SBATCH -p node
#SBATCH -A <projectID>
#SBATCH -n 16
#SBATCH -t 7-00:00:00
#SBATCH --mem=128GB
#SBATCH --mail-type=ALL... (1 Reply)
Discussion started by: @man
1 Replies
LEARN ABOUT REDHAT
csv
csv(n) CSV processing csv(n)
NAME
csv - Procedures to handle CSV data.
SYNOPSIS
package require Tcl 8.3
package require csv ?0.3?
::csv::join values {sepChar ,}
::csv::joinlist values {sepChar ,}
::csv::read2matrix chan m {sepChar ,} {expand none}
::csv::read2queue chan q {sepChar ,}
::csv::report cmd matrix ?chan?
::csv::split line {sepChar ,}
::csv::split2matrix m line {sepChar ,} {expand none}
::csv::split2queue q line {sepChar ,}
::csv::writematrix m chan {sepChar ,}
::csv::writequeue q chan {sepChar ,}
DESCRIPTION
The csv package provides commands to manipulate information in CSV FORMAT (CSV = Comma Separated Values).
COMMANDS
The following commands are available:
::csv::join values {sepChar ,}
Takes a list of values and returns a string in CSV format containing these values. The separator character can be defined by the
caller, but this is optional. The default is ",".
::csv::joinlist values {sepChar ,}
Takes a list of lists of values and returns a string in CSV format containing these values. The separator character can be defined
by the caller, but this is optional. The default is ",". Each element of the outer list is considered a record, these are separated
by newlines in the result. The elements of each record are formatted as usual (via ::csv::join).
::csv::read2matrix chan m {sepChar ,} {expand none}
A wrapper around ::csv::split2matrix (see below) reading CSV-formatted lines from the specified channel (until EOF) and adding them
to the given matrix. For an explanation of the expand argument see ::csv::split2matrix.
::csv::read2queue chan q {sepChar ,}
A wrapper around ::csv::split2queue (see below) reading CSV-formatted lines from the specified channel (until EOF) and adding them
to the given queue.
::csv::report cmd matrix ?chan?
A report command which can be used by the matrix methods format 2string and format 2chan. For the latter this command delegates the
work to ::csv::writematrix. cmd is expected to be either printmatrix or printmatrix2channel. The channel argument, chan, has to be
present for the latter and must not be present for the first.
::csv::split line {sepChar ,}
converts a line in CSV format into a list of the values contained in the line. The character used to separate the values from each
other can be defined by the caller, via sepChar, but this is optional. The default is ",".
::csv::split2matrix m line {sepChar ,} {expand none}
The same as ::csv::split, but appends the resulting list as a new row to the matrix m, using the method add row. The expansion mode
specified via expand determines how the command handles a matrix with less columns than contained in line. The allowed modes are:
none This is the default mode. In this mode it is the responsibility of the caller to ensure that the matrix has enough columns to
contain the full line. If there are not enough columns the list of values is silently truncated at the end to fit.
empty In this mode the command expands an empty matrix to hold all columns of the specified line, but goes no further. The overall
effect is that the first of a series of lines determines the number of columns in the matrix and all following lines are
truncated to that size, as if mode none was set.
auto In this mode the command expands the matrix as needed to hold all columns contained in line. The overall effect is that after
adding a series of lines the matrix will have enough columns to hold all columns of the longest line encountered so far.
::csv::split2queue q line {sepChar ,}
The same as ::csv::split, but appending the resulting list as a single item to the queue q, using the method put.
::csv::writematrix m chan {sepChar ,}
A wrapper around ::csv::join taking all rows in the matrix m and writing them CSV formatted into the channel chan.
::csv::writequeue q chan {sepChar ,}
A wrapper around ::csv::join taking all items in the queue q (assumes that they are lists) and writing them CSV formatted into the
channel chan.
FORMAT
Each record of a csv file (comma-separated values, as exported e.g. by Excel) is a set of ASCII values separated by ",". For other lan-
guages it may be ";" however, although this is not important for this case (The functions provided here allow any separator character).
If a value contains itself the separator ",", then it (the value) is put between "".
If a value contains ", it is replaced by "".
EXAMPLE
The record
123,"123,521.2","Mary says ""Hello, I am Mary"""
is parsed as follows:
a) 123
b) 123,521.2
c) Mary says "Hello, I am Mary"
SEE ALSO
matrix, queue
KEYWORDS
csv, matrix, queue, package, tcllib
csv 0.3 csv(n)