cs-3424: add initial solution for Quiz 1
This commit is contained in:
parent
f10e8fd174
commit
cc2fbeb808
122
Summer-2024/CS-3424/Quizzes/Quiz-1/Assignment.typ
Normal file
122
Summer-2024/CS-3424/Quizzes/Quiz-1/Assignment.typ
Normal file
@ -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
|
||||
```
|
||||
]
|
Loading…
Reference in New Issue
Block a user