1
0
Fork 0

Week 8: Assignment - Modifying 'datebook'

This commit is contained in:
Llewellyn van der Merwe 2020-10-24 20:11:24 +02:00
parent 10c4469f53
commit 8cb96ab983
Signed by: Llewellyn
GPG Key ID: EFC0C720A240551C
5 changed files with 90 additions and 0 deletions

View File

@ -0,0 +1,26 @@
# Week 8: Assignment - Modifying 'datebook' file
# by Llewellyn van der Merwe
1) sed -i 's/\bJon\b/Jonathan/g' datebook.txt
2) sed -i -e '1,3d' datebook.txt
3) sed -n '5,10'p datebook.txt
4) sed -i '/Lane/d' datebook.txt
5) grep -E '(([^0-9]|^)12/([1-9]|[1-2][0-9]|0[1-9]|3[01])|([^0-9]|^)11/([1-9]|[1-2][0-9]|0[1-9]|30))/([0-9][0-9]|[0-9][0-9][0-9][0-9])([^0-9]|$)' datebook.txt
6) sed -i 's/^Fred.*/&***/g' datebook.txt
7) sed -E -i 's/([^a-Z]|^)Jose([[:space:]][[:upper:]]\w+)(.*)?/JOSE HAS RETIRED/g' datebook.txt # just the line where Jose is a name
sed -E -i 's/(.*)?Jose(.*)?/JOSE HAS RETIRED/g' datebook.txt # all lines containing Jose
8) sed -E -i '/([^a-Z]|^)Popeye[[:space:]][[:upper:]]\w+/ s/([^0-9]|^)(1[0-2]|[1-9])\/([1-2]?[0-9]|3[01])\/([0-9][0-9])([^0-9]|$)/\111\/14\/46\5/' datebook.txt
9) sed -i '/^$/d' datebook.txt
10.a) mysedscript.sh
sudo chmod +x mysedscript.sh
./mysedscript.sh datebook.txt
10.b) sed -E -i -f script.sed datebook.txt

27
week-08/datebook.bak.txt Normal file
View File

@ -0,0 +1,27 @@
Steve Blenheim:238-923-7366:95 Latham Lane, Easton, PA 83755:11/12/56:20300
Betty Boop:245-836-8357:635 Cutesy Lane, Hollywood, CA 91464:6/23/23:14500
Igor Chevsky:385-375-8395:3567 Populus Place, Caldwell, NJ 23875:6/18/68:23400
Norma Corder:397-857-2735:74 Pine Street, Dearborn, MI 23874:3/28/45:245700
Jennifer Cowan:548-834-2348:583 Laurel Ave., Kingsville, TX 83745:10/1/35:58900
Jon DeLoach:408-253-3122:123 Park St., San Jose, CA 04086:7/25/53:85100
Karen Evich:284-758-2857:23 Edgecliff Place, Lincoln, NB 92743:7/25/53:85100
Karen Evich:284-758-2867:23 Edgecliff Place, Lincoln, NB 92743:11/3/35:58200
Karen Evich:284-758-2867:23 Edgecliff Place, Lincoln, NB 92743:11/3/35:58200
Fred Fardbarkle:674-843-1385:20 Parak Lane, Duluth, MN 23850:4/12/23:780900
Fred Fardbarkle:674-843-1385:20 Parak Lane, Duluth, MN 23850:4/12/23:780900
Lori Gortz:327-832-5728:3465 Mirlo Street, Peabody, MA 34756:10/2/65:35200
Paco Gutierrez:835-365-1284:454 Easy Street, Decatur, IL 75732:2/28/53:123500
Ephram Hardy:293-259-5395:235 CarltonLane, Joliet, IL 73858:8/12/20:56700
James Ikeda:834-938-8376:23445 Aster Ave., Allentown, NJ 83745:12/1/38:45000
Barbara Kertz:385-573-8326:832 Ponce Drive, Gary, IN 83756:12/1/46:268500
Lesley Kirstin:408-456-1234:4 Harvard Square, Boston, MA 02133:4/22/62:52600
William Kopf:846-836-2837:6937 Ware Road, Milton, PA 93756:9/21/46:43500
Sir Lancelot:837-835-8257:474 Camelot Boulevard, Bath, WY 28356:5/13/69:24500
Jesse Neal:408-233-8971:45 Rose Terrace, San Francisco, CA 92303:2/3/36:25000
Zippy Pinhead:834-823-8319:2356 Bizarro Ave., Farmount, IL 84357:1/1/67:89500
Arthur Putie:923-835-8745:23 Wimp Lane, Kensington, DL 38758:8/31/69:126000
Popeye Sailor:156-454-3322:945 Bluto Street, Anywhere, USA 29358:3/19/35:22350
Jose Santiago:385-898-8357:38 Fife Way, Abilene, TX 39673:1/5/58:95600
Tommy Savage:408-724-0140:1222 Oxbow Court, Sunnyvale, CA 94087:5/19/66:34200
Yukio Takeshida:387-827-1095:13 Uno Lane, Ashville, NC 23556:7/1/29:57000
Vinh Tranh:438-910-7449:8235 Maple Street, Wilmington, VM 29085:9/23/63:68900

27
week-08/datebook.txt Normal file
View File

@ -0,0 +1,27 @@
Steve Blenheim:238-923-7366:95 Latham Lane, Easton, PA 83755:11/12/56:20300
Betty Boop:245-836-8357:635 Cutesy Lane, Hollywood, CA 91464:6/23/23:14500
Igor Chevsky:385-375-8395:3567 Populus Place, Caldwell, NJ 23875:6/18/68:23400
Norma Corder:397-857-2735:74 Pine Street, Dearborn, MI 23874:3/28/45:245700
Jennifer Cowan:548-834-2348:583 Laurel Ave., Kingsville, TX 83745:10/1/35:58900
Jon DeLoach:408-253-3122:123 Park St., San Jose, CA 04086:7/25/53:85100
Karen Evich:284-758-2857:23 Edgecliff Place, Lincoln, NB 92743:7/25/53:85100
Karen Evich:284-758-2867:23 Edgecliff Place, Lincoln, NB 92743:11/3/35:58200
Karen Evich:284-758-2867:23 Edgecliff Place, Lincoln, NB 92743:11/3/35:58200
Fred Fardbarkle:674-843-1385:20 Parak Lane, Duluth, MN 23850:4/12/23:780900
Fred Fardbarkle:674-843-1385:20 Parak Lane, Duluth, MN 23850:4/12/23:780900
Lori Gortz:327-832-5728:3465 Mirlo Street, Peabody, MA 34756:10/2/65:35200
Paco Gutierrez:835-365-1284:454 Easy Street, Decatur, IL 75732:2/28/53:123500
Ephram Hardy:293-259-5395:235 CarltonLane, Joliet, IL 73858:8/12/20:56700
James Ikeda:834-938-8376:23445 Aster Ave., Allentown, NJ 83745:12/1/38:45000
Barbara Kertz:385-573-8326:832 Ponce Drive, Gary, IN 83756:12/1/46:268500
Lesley Kirstin:408-456-1234:4 Harvard Square, Boston, MA 02133:4/22/62:52600
William Kopf:846-836-2837:6937 Ware Road, Milton, PA 93756:9/21/46:43500
Sir Lancelot:837-835-8257:474 Camelot Boulevard, Bath, WY 28356:5/13/69:24500
Jesse Neal:408-233-8971:45 Rose Terrace, San Francisco, CA 92303:2/3/36:25000
Zippy Pinhead:834-823-8319:2356 Bizarro Ave., Farmount, IL 84357:1/1/67:89500
Arthur Putie:923-835-8745:23 Wimp Lane, Kensington, DL 38758:8/31/69:126000
Popeye Sailor:156-454-3322:945 Bluto Street, Anywhere, USA 29358:3/19/35:22350
Jose Santiago:385-898-8357:38 Fife Way, Abilene, TX 39673:1/5/58:95600
Tommy Savage:408-724-0140:1222 Oxbow Court, Sunnyvale, CA 94087:5/19/66:34200
Yukio Takeshida:387-827-1095:13 Uno Lane, Ashville, NC 23556:7/1/29:57000
Vinh Tranh:438-910-7449:8235 Maple Street, Wilmington, VM 29085:9/23/63:68900

6
week-08/mysedscript.sh Executable file
View File

@ -0,0 +1,6 @@
#/bin/bash
sed -i '1 i\PERSONNEL FILE' $1
sed -i '/[[:digit:]]500$/d' $1
sed -E 's/([^a-Z]|^)([[:upper:]]\w+)[[:space:]]([[:upper:]]\w+)/\3 \2/' $1
sed -i '$a\THE END' $1

4
week-08/script.sed Normal file
View File

@ -0,0 +1,4 @@
1 i\PERSONNEL FILE
/[[:digit:]]500$/d
s/([^a-Z]|^)([[:upper:]]\w+)[[:space:]]([[:upper:]]\w+)/\3 \2/
$a\THE END