Sponsored Content
Homework and Emergencies Homework & Coursework Questions Shell scripting/working with a file Post 302796061 by Jagst3r21 on Thursday 18th of April 2013 11:26:54 PM
Old 04-19-2013
Shell scripting/working with a file

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted!

1. The problem statement, all variables and given/known data:

1. Write a shell script that will work with a file from the command line.

The program should:
a. Check for the existence of a bkup directory in your home directory. If it does not exist create it.

For the file:
b. Verify that the file exists
c. Copy it to the bkup directory in your home directory.
d. Issue messages on the success or failure of each file copy to a log file.
e. Print out a copy of the log file and the bkup directory at the end of the program.

Print out a copy of the program and an example of the output.

2. Relevant commands, code, scripts, algorithms:

shell programming/scripting

3. The attempts at a solution (include all code and scripts):

1.
Code:
#!/bin/bash

if [ -d /var/home/stud3/myname/bkup ]; then
	mkdir /var/home/stud3/myname/bkup
elif [ -f /foo.txt ]
then
	cp foo.txt /var/home/stud3/myname/bkup && echo The file was copied
else
	echo The file was not copied
fi 

-print logfile

I do not think this is right, but it is my best attempt.

P.S. I was not sure how to print the bkup directory Smilie

4. Complete Name of School (University), City (State), Country, Name of Professor, and Course Number (Link to Course):

Brookdale Community College - Lincroft, New Jersey - United States - Dr. Rick Bournique- COMP 145


Note: Without school/professor/course information, you will be banned if you post here! You must complete the entire template (not just parts of it).
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

file activity (open/closed) file descriptor info using KORN shell scripting

I am trying to find a way to check the current status of a file. Such as some cron job processes are dependent on the completion of others. if a file is currently being accessed / modified or simply open state I will wait until it is done being processed before attempting the next process on that... (3 Replies)
Discussion started by: Gary Dunn
3 Replies

2. Shell Programming and Scripting

difference between AIX shell scripting and Unix shell scripting.

please give the difference between AIX shell scripting and Unix shell scripting. (2 Replies)
Discussion started by: haroonec
2 Replies

3. Shell Programming and Scripting

file permissions using shell scripting

Hi I am trying to use shell script to display file permissions, and I can do it fine for the current user logged in, but now I want to view all file permissions for the Owner of the file, Group users and everyone, so it will look something like this: -----------------READ WRITE EXECUTE OWNER... (11 Replies)
Discussion started by: barbus
11 Replies

4. Shell Programming and Scripting

Need to create file from shell scripting

Hi, I want to create a file from a shell script. the data for the file will come from variables. that is the file format is like, var1-value var2_value ... that is, var1_value should be placed in first 10 spaces and var2_value should be placed in next 8 columns like that. is there... (4 Replies)
Discussion started by: smr_rashmy
4 Replies

5. Shell Programming and Scripting

file operations in shell scripting

hi All, my query... 1.I Have to search for the files in the root directory. 2.i have to search for a pattern in all the files in the root directory and then replace them with a new pattern. 3.Rename the file Explanation: if ABC is the root folder and has 3 subfolders and there are 15... (9 Replies)
Discussion started by: adityamahi
9 Replies

6. Shell Programming and Scripting

Shell scripting - need to arrange the columns from multiple file into a single file

Hi friends please help me on below, i have 5 files like below file1 is x 10 y 20 z 15 file2 is x 100 z 245 file3 is y 78 z 23 file4 is x 100 (3 Replies)
Discussion started by: siva kumar
3 Replies

7. UNIX for Dummies Questions & Answers

Shell script to read lines in a text file and filter user data Shell Programming and Scripting

sxsaaas (3 Replies)
Discussion started by: VikrantD
3 Replies

8. Shell Programming and Scripting

Shell scripting for file manupilations

Hi linux users, I have a file with following format. { Name shiva; location Delhi; travelID IDNumber; } 4 ( (0.1 0.2 0.3) 1234 (1.1 1.2 1.3) 12345 (2.1 2.2 2.3) 12354 (3.1 3.2 3.3) 123667 )now i wanted to write this data in separate files as... (2 Replies)
Discussion started by: linuxUser_
2 Replies

9. Shell Programming and Scripting

Read csv file, convert the data and make one text file in UNIX shell scripting

I have input data looks like this which is a part of a csv file 7,1265,76548,"0102:04" 8,1266,76545,"0112:04" I need to make the output data should look like this and the output data will be part of text file: 7|1265000 |7654899 |A| 8|12660000 |76545999 |B| The logic behind the... (6 Replies)
Discussion started by: RJG
6 Replies

10. Shell Programming and Scripting

Typeset is not working in Linux korn shell scripting

Hi All, Kindly help on the below issue ASAP. Its very urgent. I have script in which we have below two lines for code and it is not working. Please help. files_to_process=" abc_*.log def_*.log ghi_*.log " typeset -A dir_list ${files_to_process} the script is failing in Linux... (3 Replies)
Discussion started by: tvbhkishore
3 Replies
cp(1)								   User Commands							     cp(1)

NAME
cp - copy files SYNOPSIS
/usr/bin/cp [-fip@/] source_file target_file /usr/bin/cp [-fip@/] source_file... target /usr/bin/cp -r | -R [-H | -L | -P] [-fip@/] source_dir... target /usr/bin/cp -R | -R [-H | -L | -P] [-fip@/] source_dir... target /usr/xpg4/bin/cp [-fip@/] source_file target_file /usr/xpg4/bin/cp [-fip@/] source_file... target /usr/xpg4/bin/cp -r | -R [-H | -L | -P] [-fip@/] source_dir... target /usr/xpg4/bin/cp -R | -R [-H | -L | -P] [-fip@/] source_dir... target DESCRIPTION
In the first synopsis form, neither source_file nor target_file are directory files, nor can they have the same name. The cp utility copies the contents of source_file to the destination path named by target_file. If target_file exists, cp overwrites its contents, but the mode (and ACL if applicable), owner, and group associated with it are not changed. The last modification time of target_file and the last access time of source_file are set to the time the copy was made. If target_file does not exist, cp creates a new file named target_file that has the same mode as source_file except that the sticky bit is not set unless the user is super-user. In this case, the owner and group of tar- get_file are those of the user, unless the setgid bit is set on the directory containing the newly created file. If the directory's setgid bit is set, the newly created file has the group of the containing directory rather than of the creating user. If target_file is a link to another file, cp overwrites the link destination with the contents of source_file; the link(s) from target_file remains. In the second synopsis form, one or more source_files are copied to the directory specified by target. It is an error if any source_file is a file of type directory, if target either does not exist or is not a directory. In the third or fourth synopsis forms, one or more directories specified by source_dir are copied to the directory specified by target. Either the -r or -R must be specified. For each source_dir, cp copies all files and subdirectories. OPTIONS
The following options are supported for both /usr/bin/cp and /usr/xpg4/bin/cp: -f Unlink. If a file descriptor for a destination file cannot be obtained, this option attempts to unlink the destination file and pro- ceed. -H Takes actions based on the type and contents of the file referenced by any symbolic link specified as a source_file operand. If the source_file operand is a symbolic link, then cp copies the file referenced by the symbolic link for the source_file operand. All other symbolic links encountered during traversal of a file hierarchy are preserved. -i Interactive. cp prompts for confirmation whenever the copy would overwrite an existing target. An affirmative response means that the copy should proceed. Any other answer prevents cp from overwriting target. -L Takes actions based on the type and contents of the file referenced by any symbolic link specified as a source_file operand or any symbolic links encountered during traversal of a file hierarchy. Copies files referenced by symbolic links. Symbolic links encountered during traversal of a file hierarchy are not preserved. -p Preserve. The cp utility duplicates not only the contents of source_file, but also attempts to preserve its ACL, access and modifica- tion times, extended attributes, extended system attributes, file mode, and owner and group ids. If cp is unable to preserve the access and modification times, extended attributes, or the file mode, cp does not consider it a fail- ure. If cp is unable to preserve the owner and group id, the copy does not fail, but cp silently clears the S_ISUID and S_ISGID bits from the file mode of the target. The copy fails if cp is unable to clear these bits. If cp is unable to preserve the ACL or extended system attributes, the copy fails. If the copy fails, then a diagnostic message is written to stderr and (after processing any remaining operands) cp exits with a non-zero exit status. -P Takes actions on any symbolic link specified as a source_file operand or any symbolic link encountered during traversal of a file hierarchy. Copies symbolic links. Symbolic links encountered during traversal of a file hierarchy are preserved. -r Recursive. cp copies the directory and all its files, including any subdirectories and their files to target. Unless the -H, -L, or -P option is specified, the -L option is used as the default mode. -R Same as -r, except pipes are replicated, not read from. -@ Preserves extended attributes. cp attempts to copy all of the source file's extended attributes along with the file data to the des- tination file. -/ Preserves extended attributes and extended system attributes. Along with the file's data, the cp utility attempts to copy extended attributes and extended system attributes from each source file, and extended system attributes associated with extended attributes to the destination file. If cp is unable to copy extended attributes or extended system attributes, then a diagnostic message is written to stderr and (after processing any remaining operands) exits with a non-zero exit status. Specifying more than one of the mutually-exclusive options -H, -L, and -P is not considered an error. The last option specified determines the behavior of the utility. /usr/bin/cp If the -p option is specified with either the -@ option or the -/ option, /usr/bin/cp behaves as follows o When both -p and -@ are specified in any order, the copy fails if extended attributes cannot be copied. o When both -p and -/ are specified in any order, the copy fails if extended system attributes cannot be copied. /usr/xpg4/bin/cp If the -p option is specified with either the -@ option or the -/ option, /usr/xpg4/bin/cp behaves as follows: o When both -p and -@ are specified, the last option specified determines whether the copy fails if extended attributes cannot be preserved. o When both -p and -/ are specified, the last option specified determines whether the copy fails if extended system attributes cannot be preserved. OPERANDS
The following operands are supported: source_file A pathname of a regular file to be copied. source_dir A pathname of a directory to be copied. target_file A pathname of an existing or non-existing file, used for the output when a single file is copied. target A pathname of a directory to contain the copied files. USAGE
See largefile(5) for the description of the behavior of cp when encountering files greater than or equal to 2 Gbyte ( 2^31 bytes). EXAMPLES
Example 1 Copying a File The following example copies a file: example% cp goodies goodies.old example% ls goodies* goodies goodies.old Example 2 Copying a List of Files The following example copies a list of files to a destination directory: example% cp ~/src/* /tmp Example 3 Copying a Directory The following example copies a directory, first to a new, and then to an existing destination directory example% ls ~/bkup /usr/example/fred/bkup not found example% cp -r ~/src ~/bkup example% ls -R ~/bkup x.c y.c z.sh example% cp -r ~/src ~/bkup example% ls -R ~/bkup src x.c y.c z.sh src: x.c y.c z.s Example 4 Copying Extended File System Attributes The following example copies extended file system attributes: $ ls -/ c file1 -rw-r--r-- 1 foo staff 0 Oct 29 20:04 file1 {AH-----m--} $ cp -/ file1 file2 $ ls -/c file2 -rw-r--r-- 1 foo staff 0 Oct 29 20:17 file2 {AH-----m--} Example 5 Failing to Copy Extended System Attributes The following example fails to copy extended system attributes: $ ls -/c file1 -rw-r--r-- 1 foo staff 0 Oct 29 20:04 file1 {AH-----m--} $ cp -/ file1 /tmp cp: Failed to copy extended system attributes from file1 to /tmp/file1 $ ls -/c /tmp/file1 -rw-r--r-- 1 foo staff 0 Oct 29 20:09 /tmp/file1 {} ENVIRONMENT VARIABLES
See environ(5) for descriptions of the following environment variables that affect the execution of cp: LANG, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES, and NLSPATH. Affirmative responses are processed using the extended regular expression defined for the yesexpr keyword in the LC_MESSAGES category of the user's locale. The locale specified in the LC_COLLATE category defines the behavior of ranges, equivalence classes, and multi-character collating elements used in the expression defined for yesexpr. The locale specified in LC_CTYPE determines the locale for interpretation of sequences of bytes of text data a characters, the behavior of character classes used in the expression defined for the yesexpr. See locale(5). EXIT STATUS
The following exit values are returned: 0 All files were copied successfully. >0 An error occurred. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: /usr/bin/cp +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWcsu | +-----------------------------+-----------------------------+ |CSI |Enabled | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ /usr/xpg4/bin/cp +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Availability |SUNWxcu4 | +-----------------------------+-----------------------------+ |CSI |Enabled | +-----------------------------+-----------------------------+ |Interface Stability |Committed | +-----------------------------+-----------------------------+ SEE ALSO
chmod(1), chown(1), setfacl(1), utime(2), fgetattr(3C), attributes(5), environ(5), fsattr(5), largefile(5), locale(5), standards(5) NOTES
The permission modes of the source file are preserved in the copy. A -- permits the user to mark the end of any command line options explicitly, thus allowing cp to recognize filename arguments that begin with a -. SunOS 5.11 30 Oct 2007 cp(1)
All times are GMT -4. The time now is 11:03 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy