Customer Service Chat
Get quote & make Payment
Unix, Programming Languages
1. Write a shell script to locate executable files. This script takes a list of file names from the command line and determines which would be executed had these names been given as commands.
• The search path should be based only on the user''s PATH environment variable. You shall not use the Unix which command, the ksh whence (type) command, or the bash type command.
• The script should find only the first occurrence of the "file". If the file is not found, the script should print an error message that the file was not found in the user''s path. (Both the filename and the users path should be printed.)
• If the first parameter is ''-a'', then the script should print all occurrences of the executable file in the user''s path. Again if the file was not on the path, an error message should be displayed.
• The find command shall not be used.
• A project using temporary files will not be graded.
• The shell variable PATH defines the search path for the directory containing the command. Alternative directory names are separated by a colon (:). The current directory can be specified by two or more adjacent colons, or by a colon at the beginning or end of the path list.
• If the command name contains a / then the search path is not used. Otherwise, each directory in the path is searched for an executable file.
usage: mywhich [-a] command ....
Examples: The locations of these programs may vary on different systems and the users PATH environment variable.
prompt> mywhich ls
prompt> mywhich -a cc
prompt> mywhich ./mywhich
prompt> mywhich fooblar
fooblar not found
prompt> mywhich ksh sh csh bash
2.Write a shell script to concatenate lists together, and output the resulting list. Do not include any argument that is a sub-list of the entire list. (The script will clean the list of any redundant items.) You must preserve the original order of the list. Remember to account for the following situations:
• a : at the beginning of the list is the same as a . at the beginning of the "list" (:/bin is the same a .:/bin)
• a :: any where in the list is the same as :.: (/bin::/etc is the same as (/bin:.:/etc)
• a : at the end of the list is the same a :. ( /bin: is the same as /bin:. )
• Project usings temporary files will not be graded.
• The input to the script will be color or space separated lists and the output will be a colon separated list with the orignal order preserved and all redunant items removed.
USAGE: clean_list list ....
Where list a a colon or whitespace separated list.
prompt> clean_list a a:b a:b:c :x: y:z
prompt>clean_list /bin:/usr/bin:/usr/openwin/bin /usr/bin:/usr/etc:/etc: /usr/bin/X11 .:/bin
prompt>clean_list apple:orange:apple pear orange peach
REMEMBER TO HANDLE THE SPECIAL CASES OF LEADING :, A ::, AND A TRAILING :
Write a shell script, change-lines, which will substitute a string for a replacement string for each occurance of the string in files specified.
The original file will be saved, with the same filename with the .keep extension unless the -n option is present.
You may use a temporary file for this script.
Remember the search string and or the replacement string can have special characters in them, so you must use proper quoting techniques.
The script will use following options:
• the option -s "string" for the search strings
• the option -r "string" for the replacement string
• the -n option to prevent a backup file from being created
• the -h option to print a usage statement and exit
The script will exit with an error status and print an error message:
• if the -s option is not present.
• if the -r option is not present.
• if the string is not specified with the -s option
• if the string is not specified with the -r option
• if there are any other options specified
• if there are no input files specified
• if the input file cannot be read by the current process
• if the input file cannot be written by the current process
• if you cannot create the backup file.
Here is the usage statement for the script:
change-lines [-n] -s search string -r replace string files ...
• -n do not backup the original file
• -s search string the search for this string
• -r replace string replace the search string with this string
• -h print this message
prompt> change-lines -s foobar -r FooBar *.c
This script will edit all the files *.c, and each occurrence of foobar it will be replaced by FooBar it will be replaced by FooBar.
Each file will be backed up.
prompt> change-lines -s "SHELL IS NOT FUN" -r "SHELL PROGRAMING IS A LOT OF FUN" /tmp/file1.txt
This script will edit all the file /tmp/file1.txt , and each occurrence of SHELL IS NOT FUN will replaced by the text,
SHELL PROGRAMMING IS A LOT OF FUN. A backup file /tmp/file1.txt.keep will be created.
I want you to modify the following program
you do not use the program listed above as the basis for the assignment, your assignment will NOT be graded.
Follow the my shell programming guidelines as in the other assignments.
Write a shell script to send a customized mail message to the users listed on the command line by login (user) name, only if they are currently logged on.
• If no users are listed on the command line an error message should be printed.
• In the mail message, you should use the full (real) name from the passwd file (/etc/passwd).
• You also need to sign the script with the real name of the person who is running the script.
o This can be derived from the $USER environment variable and looking up the value in the password file.
• An error message should be printed if the user does not exist in the passwd file.
• PLEASE ONLY SEND THIS MESSAGE TO USERS WHICH YOU KNOW PERSONALLY.
o You can always use yourself and me (mrichard) as a test case
o The real name of the user of the script should only be computed once.
• A "Here-Document (In-Line Redirection)" must be used for the mail message.
• No temporary files shall be used.
The message should be as follows:
**** This email is automatically generatated by
My instructor requires that I send this message as part of an assignment for class 92.312.
The current time and date is
Have a nice day.
Posted Date: 11/1/2012 11:57:23 AM | Location : United States
Ask an Expert
Unix, Assignment Help, Ask Question on Unix, Get Answer, Expert's Help, Unix Discussions
Write discussion on Unix
Your posts are moderated
Write your message here..
Write a perl script that prints the contents of a file, Write a Perl script...
Write a Perl script that prints the contents of a file Write a Perl script that prints the contents of a file, prefixing each line with a line number. The script should acc
Program to produce the given output , Given a file named maze1.txt whose co...
Given a file named maze1.txt whose contents is 1 0 2 2 1 2 3 0 3 2 2 1 2 0 2 2 3 0 1 1 3 1 0 0 2 0 3 0 0 1 2 0 3 2 2 0 1 2 3 2 1 0 0 1 1 0 0 0 your program when run as a.out
Game, How to make game in pascal language
How to make game in pascal language
Write a prolog predicate for a list, Write a Prolog predicate remove_nth(N,...
Write a Prolog predicate remove_nth(N,L1,L2) that is true if list L2 is just list L1 with its Nth element removed. If L1 does not have an Nth element then the predicate should fail
Create program that displays levels of the fractal structure, In this Proje...
In this Project your task is to create a program that displays various levels of the fractal structure of the so called square shaped Sierpinski-carpet. The display of level 4 is s
Program to translate a sentence , a) Write a program i_language(Sentence,N...
a) Write a program i_language(Sentence,NewSentence) that translates a sentence to the i-language. In this language all vowels are changed to i and all other characters are kep
Pascal program, Pascal program: Exactly what you need to do to generat...
Pascal program: Exactly what you need to do to generate your empirical data is specific to your individual assignment. However, some rules apply to all of you: 1. The gener
Design and create a new class, You are to design and create a new class cal...
You are to design and create a new class called SelectCallDataDialog, which opens by clicking browse buttons for selection of ringtones, vibrations or leds. Depending on which th
A traveler wants to purchase a number of traveler''s checks, A traveler wan...
A traveler wants to purchase a number of traveler''s checks, each having a set amount for four different currencies: Mexican pesos, Euro dollars, Swiss francs, and US dollars. A t
Output for the following instruction if CX=9087H AX=9090H, What will be the...
What will be the output for the following instruction if CX=9087H and AX=9090H? 1) BTR AH,2? 10010000=10010000 2) BTC CX,9?1001000010000111=1001000110000111 3) NEG AX?
Accounting Assignment Help
Economics Assignment Help
Finance Assignment Help
Statistics Assignment Help
Physics Assignment Help
Chemistry Assignment Help
Math Assignment Help
Biology Assignment Help
English Assignment Help
Management Assignment Help
Engineering Assignment Help
Programming Assignment Help
Computer Science Assignment Help
IT Courses and Help
Why Us ?
~24x7 hrs Support
~Quality of Work
~Time on Delivery
~Privacy of Work
Human Resource Management
Literature Review Writing Help
Follow Us |
T & C
Copyright by ExpertsMind IT Educational Pvt. Ltd.