Script to change file name


 
Thread Tools Search this Thread
# 1  
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 10:10 AM.. Reason: code tags
# 2  
at command line: mv test1.txt test1_fails.txt
# 3  
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  
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  
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  
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  
bash

The above script will work with bash. But you have used csh.
 

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #469
Difficulty: Medium
The NTP pool is a dynamic collection of networked computers that volunteer to provide highly accurate time via the Network Time Protocol to clients worldwide.
True or False?

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

Script to change the file at one go on different UNIX machines

Hi Folks , I have a query that is I have a server (unix machhine) to which I login thru winscp or putty , mostly I use putty and at a particular location there is one xml(abc.xml) while which I change , let say 1) I login to first unix box hostname :- ccc74 username ... (1 Reply)
Discussion started by: tuntun27272727
1 Replies

4. Shell Programming and Scripting

Change values in .conf file with a script

This is my first time posting here...so be gentle. Suppose I have a test.conf file that contains a value such as a IP. I would like to be able to use the Dialog Utility in Linux to allow me to enter the new IP in a Dialog form...and the results get saved into the test.conf file in the place... (4 Replies)
Discussion started by: calahanp
4 Replies

5. 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

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

Featured Tech Videos