12-20-2006
Reading Multiple Variables From a Single Line in Shell
I'm a Linux newb, I've been running a Debian Linux server for about a year now, and I've written some simple scripts to automate various things, but I still don't know much, and I forget what I learn as fast as I figure it out... Anyway, that really isn't important, I just want you to know that you will probably need to keep things simple if you answer my question. I use ssh to access my server so it is all command line.
I want to write a script to automate backups of certain files on my server. What I've done is create at text file with the name I want to call the backup file, and the folder or file I want to back up seperated by a space, one backup file per line, as follows:
mysql_config /etc/mysql
apache2_config /etc/apache2
What I want to do is have the script read each line, and create a gzipped tarball of each file/folder with the name I have given. My problem is that, as I understand it, cat goes line by line, how do I extract the two different variables from each line? Everything else I think I can figure out, but that one has me stumped. I was thinking I could use awk or mawk, but how do I get awk to only parse one line incrementally?
Thanks in advance. I'm pretty sure this will be simple once I see the solution...
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
hello,
i need an algorithm which reads a line specified to it in shortest possible time.
i am already using sed, i need a better way. please suggest me alternatives (2 Replies)
Discussion started by: rochitsharma
2 Replies
2. Shell Programming and Scripting
Hi,
Is it possible to read every 2 lines as single record, I have a file like below,
~CZK ~TSCHECHISCHE KRONE ~TSCHECH. REPUBLIK
Dec 1 2005 12:00AM~ 10.840000~
~DKK ~DAENISCHE KRONE ~DAENEMARK
Dec 2 2005 12:00AM~ ... (9 Replies)
Discussion started by: braindrain
9 Replies
3. Shell Programming and Scripting
Hi,
I am currently filtering a file, "BUILD_TIMES", that has multiple column of information in it. An example of the data is as follows;
Fri Nov 5 15:31:33 2010 00:28:17 R7_BCGNOFJ_70.68
Fri Nov 5 20:57:41 2010 00:07:21 R7_ADJCEL_80.6
Wed Nov 10 17:33:21 2010 00:01:13 R7_BCTTEST3_80.1X... (7 Replies)
Discussion started by: crunchie
7 Replies
4. Shell Programming and Scripting
Hi,
I should read one character at a fixed position from each line of the file. So how ??? should be substituted in the code below:
while read line ; do
single_char=`???`
echo "$single_char"
done < $input_file (8 Replies)
Discussion started by: arsii
8 Replies
5. Shell Programming and Scripting
consider the small piece of code
while read line
do
echo $line
done < example
content of example file
sadasdasdasdsa erwerewrwr ergdgdfgf rgerg erwererwr
the output is like
sadasdasdasdsa erwerewrwr ergdgdfgf rgerg erwererwr
the... (4 Replies)
Discussion started by: Kesavan
4 Replies
6. Shell Programming and Scripting
Hi,
I have a requirement with,
No~Dt~Notes
1~2011/08/1~"aaa
bbb
ccc
ddd
eee
fff
ggg
hhh"
Single column alone got splitted into multiple lines.
I require the output as
No~Dt~Notes
1~2011/08/1~"aaa<>bbb<>ccc<>ddd<>eee<>fff<>ggg<>hhh"
mean to say those new lines to be... (1 Reply)
Discussion started by: Bhuvaneswari
1 Replies
7. Shell Programming and Scripting
I have a file proc.txt:
if @debug = 1 then
message 'Start Processing ', @procname, dateformat(now(*), 'hh:mm:ss'), @julian type info to client;
end if;
/*
execute immediate with quotes
'insert into sys_suppdata (property, value, key_name)
location ''' || @supp_server || '.' ||... (5 Replies)
Discussion started by: kidncute
5 Replies
8. Shell Programming and Scripting
Hi All,
Below is a sample command that I can run without any problem in the command line.
Command Line
dtToday=`date +%Y%m%d`; ls -ltr ./filename_${dtToday}.txt
-rw-r--r-- 1 monuser oinstall 0 Jan 18 11:02 ./filename_20130118.txt
But once I put that command line in file (list.txt) and... (3 Replies)
Discussion started by: padi
3 Replies
9. Shell Programming and Scripting
Hello,
I would like to ask for help with csh script.
An example of an input in .txt file is below, the number of lines varies from file to file and I have 2 or 3 columns with values. I would like to read all the values (probably one by one) and set them to independent unique variables that... (7 Replies)
Discussion started by: FMMOLA
7 Replies
10. UNIX for Dummies Questions & Answers
Hi,
I managed to read and print variable as shown in the below code.
table_name=table1,table2,table3
i=0
IFS=","
for i in $table_name
do
echo $i
done
Is there a way how I can read more than one variable. For example I need to read 2 variables and populate the output... (6 Replies)
Discussion started by: shash
6 Replies
LEARN ABOUT DEBIAN
backupninja
BACKUPNINJA(1) backupninja package BACKUPNINJA(1)
NAME
BACKUPNINJA - A lightweight, extensible meta-backup system
"a silent flower blossom death strike to lost data."
SYNOPSIS
backupninja [ -h ] [ -d ] [ -n ] [ -t ] [ -f filename ] [ --run filename ]
DESCRIPTION
Backupninja allows you to coordinate system backups by dropping a few simple configuration files into /etc/backup.d/. Most programs you
might use for making backups don't have their own configuration file format. Backupninja provides a centralized way to configure and coor-
dinate many different backup utilities.
FEATURES
- easy to read ini style configuration files.
- you can drop in scripts to handle new types of backups.
- backup actions can be scheduled.
- you can choose when status report emails are mailed to you (always, on warning, on error, never).
- console-based wizard (ninjahelper) makes it easy to create backup action configuration files.
- passwords are never sent via the command line to helper programs.
- in order to backup a db or sql database, you cannot simply copy database files. backupninja helps you safely export the data to a format
which you can backup.
- works with Linux-Vservers.
Backup types include:
- secure, remote, incremental filesytem backup (via rdiff-backup). incremental data is compressed. permissions are retained even with an
unpriviledged backup user.
- basic system and hardware information.
- encrypted remote backups (via duplicity).
- safe backup of MySQL, PostgreSQL, OpenLDAP, and subversion databases.
- burn CD/DVDs or create ISOs.
OPTIONS
-h, --help
Show summary of options
-d, --debug
Run in debug mode, where all log messages are output to the current shell.
-f, --conffile CONF_FILE
Use CONF_FILE for the main configuration instead of /etc/backupninja.conf
-t, --test
Run in test mode, no actions are actually taken.
-n, --now
Perform actions now, instead of when they might be scheduled.
--run ACTION_FILE
Runs the action configuration ACTION_FILE and exits.
CONFIGURATION
General settings are configured in /etc/backupninja.conf. In this file you can set the log level and change the default directory loca-
tions. See backupninja.conf(5).
To preform the actual backup actions, backupninja processes each action configuration file in /etc/backup.d according to the file's suffix.
See backup.d(5).
EXAMPLE USAGE
Backupninja can be used to implement whatever backup strategy you choose. It is intended, however, to be used like so:
First, databases are safely copied or exported to /var/backups. Often, you cannot make a file backup of a database while it is in use,
hence the need to use special tools to make a safe copy or export into /var/backups.
Then, vital parts of the file system, including /var/backups, are nightly pushed to a remote, off-site, hard disk (using rdiff-backup). The
local user is root, but the remote user is not privileged. Hopefully, the remote filesystem is encrypted.
In order for this to work (ie for diff-backup to run unattended), you must create ssh keys on the source server and copy the public key to
the remote user's authorized keys file. For example:
root@srchost# ssh-keygen -t rsa -b 4096
root@srchost# ssh-copy-id -i /root/.ssh/id_dsa.pub backup@desthost
Now, you should be able to ssh from user 'root' on srchost to user 'backup' on desthost without specifying a password. When prompted for a
password by ssh-keygen, just leave it blank by hitting return. The "wizard" ninjahelper(1) will walk you through these steps.
FILES
/usr/sbin/backupninja main script
/etc/backupninja.conf main configuration file; general options
/etc/cron.d/backupninja runs main script hourly
/etc/logrotate.d/backupninja rotates backupninja.log
/etc/backup.d directory for configuration files
/usr/share/backupninja directory for handler scripts
/usr/share/doc/backupninja/examples example action configuration files.
SEE ALSO
ninjahelper(1), backupninja.conf(5), backup.d(5),
AUTHOR
BACKUPNINJA was written by the riseup.net collective.
riseup October 10, 2005 BACKUPNINJA(1)