diff --git a/Summer-2024/CS-3424/Quizzes/Quiz-1/Assignment.typ b/Summer-2024/CS-3424/Quizzes/Quiz-1/Assignment.typ new file mode 100644 index 0000000..6fd602f --- /dev/null +++ b/Summer-2024/CS-3424/Quizzes/Quiz-1/Assignment.typ @@ -0,0 +1,122 @@ +#set text(font: "FreeSans") +#set page(margin: 1cm) + +#show link: item => [ + #text(blue)[#item] +] + +#show raw.where(block: true): item => [ + #text(size: 0.8em)[#block( + inset: 4pt, + stroke: luma(60%) + .5pt, + fill: luma(95%), + radius: 3pt, + )[#item]] +] + +#let comment(com) = { + text(size: 0.75em, style: "italic", fill: rgb(64, 90, 95))[#com] +} + + +#let answer(ans) = { + align(center)[#block( + inset: 4pt, + stroke: blue + .5pt, + fill: rgb(0, 149, 255, 5%), + radius: 3pt, + )[#ans]] +} + +#align(center)[#text(size: 1.3em)[= CS 3424 Quiz - Week 2]] +#align(center)[ + #("Price Hiller", "zfp106", "Quiz 1", "CS 3424").join(" ⋄ ") + #v(-.5em) + #text(size: 0.75em)[#block( + inset: 4pt, + radius: 1pt, + stroke: luma(70%) + .2pt, + width: 40%, + fill: luma(95%), + )[#par(leading: .4em)[If you are interested in viewing the source code of this document, you can do so + by clicking #link("https://git.orion-technologies.io/Price/college/src/branch/Development/Summer-2024/CS-3424/Quizzes/Quiz-1/Assignment.typ", "here.")]]] + #v(-.5em) + #line(length: 100%, stroke: (dash: "densely-dotted")) + #v(-.5em) +] + +1. Show a command to list all files beginning with 'A' and ending with a .zip extension + + #answer[ + #comment[Only for the files in the current directory:] + ```bash + echo A*.zip + ``` + #comment[For all the files on the system that the user has access to:] + + ```bash + # Searching for all files on the system that the current user has access + # to, VERY SLOW + find / -type f -name "A*.zip" + ``` + ] + + +2. Create an alias, `systems`, to change your current directory to *courses/cs3424/assignments* within your home directory. + + #answer[ + ```bash + alias systems="cd ${HOME}/courses/cs3424/assignments" + ``` + + + #comment[This assumes the `${HOME}/courses/cs3424/assignments` directory already exists.] + ] + +3. Use symbolic modes to change the permissions of `output.txt` to remove execution rights from the group and other. + + #answer[ + ```bash + chmod "g-x,o-x" output.txt + ``` + + #comment[Assuming the `output.txt` file exists.] + ] + +4. Use symbolic modes to change the permissions of all `.c` files in the current directory so the owner has read and execute access only, add read and write access to the group, and give everyone else reading access only. + + #answer[ + ```bash + chmod "u=rx,g+rw,o=r" *.c + ``` + ] + +5. Use octal notation to update `file1` to have read, write and execute access for the owner, read and write access for the group, and read access for everyone else. Hint for the octal values: + + #align(center)[#table( + columns: 4, + align: horizon, + [octal], [read], [write], [execute], + [7], [1], [1], [1], + [6], [1], [1], [0], + [5], [1], [0], [1], + [4], [1], [0], [0], + [3], [0], [1], [1], + [2], [0], [1], [0], + [1], [0], [0], [1], + [0], [0], [0], [0], + )] + + #answer[ + ```bash + chmod 000000000000000000000000000000000000000000000000000000000000000000764 file1 + ``` + + #comment[The above is, in fact, a valid octal value to pass to `chmod`.] + + #comment[See below for what I assume is the "expected" answer:] + + ```bash + chmod 0764 file1 + ``` + ]