Script to change file name


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Script to change file name
# 1  
Old 06-12-2012
Script to change file name

Hi, I need to write a script that changes the name of the filename. Let's say my script is named change_filename and I want to use it on a file named test1.txt. After running the script I want the filename renamed to test1_fails.txt

e.g.

Code:
$   ls

test1.txt   test2.txt   test3.txt

$   change_filename test1.txt
$   ls

test1_fails.txt   test2.txt   test3.txt


I'm thinking maybe the sed command and to substitute the filename but I don't know how to do it.

Moderator's Comments:
Mod Comment Please use code tags, thanks!

Last edited by zaxxon; 06-12-2012 at 09:10 AM.. Reason: code tags
# 2  
Old 06-12-2012
at command line: mv test1.txt test1_fails.txt
# 3  
Old 06-12-2012
bash

Hi,

Try this one,
Code:
#! /usr/bin/bash
base=$1
if [ -f ${base} ];
then
    mv ${base} ${base/./_fails.}
else
    echo "${base} file not found"
fi

Cheers,
RangaSmilie
This User Gave Thanks to rangarasan For This Post:
# 4  
Old 06-12-2012
Hi Rangarasan, thanks for your reply. However it is not working for me. I'm new to Unix programming so maybe it is something simple I have not spotted. I ran the following code:

Code:
#! /bin/csh

base=$1

if [ -f ${base} ]
then
   cp ${base} ${base././_fails.}
else
   echo "${base} file not found"
fi

I get the following output

Code:
$ change_filename test1.txt
base=test1.txt: Command not found
base: Undefined variable

The file test1.txt is definitely in the current directory
# 5  
Old 06-12-2012
Quote:
Originally Posted by millsy5
Hi Rangarasan, thanks for your reply. However it is not working for me. I'm new to Unix programming so maybe it is something simple I have not spotted. I ran the following code:

Code:
 
#! /bin/csh
 
base=$1
 
if [ -f ${base} ]
then
   cp ${base} ${base././_fails.}
else
   echo "${base} file not found"
fi

I get the following output

Code:
 
$ change_filename test1.txt
base=test1.txt: Command not found
base: Undefined variable

The file test1.txt is definitely in the current directory
There is an extra dot in the substitution part.
Use the below code
Code:
#! /bin/csh

base=$1

if [ -f ${base} ]
then
cp ${base} ${base/./_fails.}
else
echo "${base} file not found"
fi

Cheers,
RangaSmilie
# 6  
Old 06-12-2012
Quote:
Originally Posted by rangarasan
There is an extra dot in the substitution part.
Use the below code
Code:
#! /bin/csh

base=$1

if [ -f ${base} ]
then
cp ${base} ${base/./_fails.}
else
echo "${base} file not found"
fi

Cheers,
RangaSmilie
That extra dot was actually a typo. I did not have that in my actual script.

Do I need to declare variables somewhere? I don't know why it thinks base is a command and not a variable. I've tried renaming base but I still get the same error.
# 7  
Old 06-12-2012
bash

The above script will work with bash. But you have used csh.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to change file names

I have a landing directory on my unix (solaris) server, that receives the following files: MLH4301I AAOT-hhslog.610.20150805.txt MLH4301I AAOT-hhslog.611.20150805.txt MLH4301I AAOT-hhslog.612.20150805.txt MLH4301I AAOT-hhslog.613.20150805.txt and I need to add to this files the number 10000... (6 Replies)
Discussion started by: fretagi
6 Replies

2. Shell Programming and Scripting

Script to change name of a file with date

I have a file that contains todays date(for ex- test_08/30/2013) Now I want a script which will run and change the name of the file and put yesterday's date (for ex- test_08/29/2013) Please help. ---------- Post updated at 04:40 AM ---------- Previous update was at 04:31 AM ---------- I... (2 Replies)
Discussion started by: sv0081493
2 Replies

3. Shell Programming and Scripting

Need script to change a line in file....

Hello all, I have a line of code in a file that I need to change in the /etc/sysconfig/kdump file presently the line reads: KDUMP_COMMANDLINE_APPEND="irqpoll nr_cpus=1 reset_devices cgroup_disable=memory mce=off" what I need to do is put a comment out the 1st line and repeat it, and... (5 Replies)
Discussion started by: gartie
5 Replies

4. Shell Programming and Scripting

Change value in a file using perl or shell script

hi, I have a local.conf file which has the first line TOPDIR = "/home/mvdev/workspace/boxer". I want to replace the value to "/home/common/workspace/mirror". I tried the following perl command that is perl -p -i -e 's/Path/path1/g' myfile.txt then sed... (7 Replies)
Discussion started by: amvarma77
7 Replies

5. Shell Programming and Scripting

Change XML file structure script

Hi to all, Maybe someone could help me. I want to transform the structure of a xml file. I have this input.xml: <?xml version="1.0" encoding="utf-8"?> <votings> <file name="Reference 19762"> <case id="No. 3 Div. 870"> <j v="1">Peter</j> <j v="1">Ely</j> <j... (10 Replies)
Discussion started by: cgkmal
10 Replies

6. Shell Programming and Scripting

change file contents using script

Hi, Requirement:- Need to change pfile,so while executing script,it has to go to pfile location(ORACLE_HOME/dbs) and open init<SID>.ora file and change value db_name=<>. If db_name=abcd,script will change the db_name=1234 likr that.. Please help to code this (1 Reply)
Discussion started by: Sanal
1 Replies

7. Shell Programming and Scripting

Help with shell script for know when a file change it

Hi, IŽd like to know how to program a shell script for know when a file changes and based on that make another tasks all this in real time.. Thanks (2 Replies)
Discussion started by: mrios7
2 Replies

8. Shell Programming and Scripting

Need help script to change the log file?

Hi I have log like this : And i want the log become like this : can somebody help me?? (5 Replies)
Discussion started by: justbow
5 Replies

9. Shell Programming and Scripting

script to ftp file (ip change)

Hi All, If I want to ftp files from machine to local pc. But the ip must change everytime :( (due to VPN), can I write a script to easiler (no need to update ip in script)? user_name=aaa password=bbb cat ip.txt # # FTP the files # ftp -d -in 199.200.204.109 <<EOF user $user_name... (2 Replies)
Discussion started by: happyv
2 Replies

10. UNIX for Dummies Questions & Answers

script to change value in file

Hi, I have a parameter file and it contains following items $ cat TransactionParams From_Date_Parm=2005-02-25 To_Date_Parm=2005-05-25 Extract_Root_Parm=/detld1/etl/ascential/Ascential/DataStage/Projects/CTI_London/IAM Extract_Type_Parm=Transaction EDW_Database_Parm=hdw_erks... (1 Reply)
Discussion started by: gopskrish
1 Replies
Login or Register to Ask a Question