View the step-by-step solution to:

Exercise-1 Write a shell script named that does the following: - Discovers all users defined on the system excluding system and...


Write a shell script named that does the following:
- Discovers all users defined on the system excluding system and services users.
- For each of these users, locates the home directory and create an compressed archive for this directory (.tar.gz).
- Creates a global archive that contains all archived users home directories and save it in /var/backup.
- The script should be daily run at 1AM and for each execution, the global archive name should reflect the date of the archive creation.
- The shell script should produce a log file under /var/log/daily-backup.log to which will be added each day the following information: date of script execution, result of each user home directory archiving (archive name, size, and archive process result code) and same information about the global archive file.
- The script should send a summary report in email to [email protected] at the end of each execution containing date, total time of execution, encountered problems.


Write a shell script that swaps the contents of two files. The shell script should be called
The script should take two arguments as input. They indicate the two files to be swapped. You should check that the proper number of arguments have been passed and that the filenames passed on the command line have the proper permissions set. You should also check that any temporary files used during the execution of the script do not exist. If any of these checks fail, then print an appropriate error message and exit the script with a status of one. If all of the checks pass, then swap the two specified files and print a message indicating that the two files have been swapped.
Example :
$ swap tmp1 tmp2
The files mp1 and tmp2 have been successfully swapped.

Write a shell script (named that reads all file names passed on the command line and –depending on the option that is used- write the files names out in all uppercase letter (if the option is –u), write the files names out in all lowercase letter (if the option is –l) or prints the contents of files on the screen (if the option is –p).
Remark: Implement this shell using your own function upper(), lower() and print().

General Remarks: In all of your shell script assignments, be sure to
1. Put the comment at the beginning of the script to indicate to the system that the Bash is to be used;
2. Put comments after that line to identify yourself, the assignment and to describe the general purpose of the script;
3. Put an appropriate comment before each block of commands in the script;
4. Exit with a status of zero when the script was able to correctly accomplish its task; and print an appropriate error message and exit with a nonzero status when the script was not able to accomplish its task.

Recently Asked Questions

Why Join Course Hero?

Course Hero has all the homework and study help you need to succeed! We’ve got course-specific notes, study guides, and practice tests along with expert tutors.


Educational Resources
  • -

    Study Documents

    Find the best study resources around, tagged to your specific courses. Share your own to gain free Course Hero access.

    Browse Documents
  • -

    Question & Answers

    Get one-on-one homework help from our expert tutors—available online 24/7. Ask your own questions or browse existing Q&A threads. Satisfaction guaranteed!

    Ask a Question