Bird
Raised Fist0
Operating Systemsknowledge~10 mins

File attributes and operations in Operating Systems - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to check if a file is readable.

Operating Systems
if os.access('example.txt', [1]):
    print('File is readable')
Drag options to blanks, or click blank then click option'
Aos.W_OK
Bos.R_OK
Cos.X_OK
Dos.F_OK
Attempts:
3 left
💡 Hint
Common Mistakes
Using write or execute flags instead of read flag.
2fill in blank
medium

Complete the code to open a file for writing only if it exists.

Operating Systems
with open('data.txt', '[1]') as file:
    file.write('Hello')
Drag options to blanks, or click blank then click option'
Aw
Bx
Cr+
Da
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'w' which creates the file if it doesn't exist.
3fill in blank
hard

Fix the error in the code to get the size of a file in bytes.

Operating Systems
size = os.path.[1]('file.txt')
print(size)
Drag options to blanks, or click blank then click option'
Aget_size
Bfilesize
Csizeof
Dgetsize
Attempts:
3 left
💡 Hint
Common Mistakes
Using incorrect function names like get_size or filesize.
4fill in blank
hard

Fill both blanks to create a dictionary of file names and their sizes for files larger than 1000 bytes.

Operating Systems
file_sizes = {f: os.path.[1](f) for f in files if os.path.[2](f) and os.path.getsize(f) > 1000}
Drag options to blanks, or click blank then click option'
Agetsize
Bexists
Disfile
Attempts:
3 left
💡 Hint
Common Mistakes
Using exists instead of isfile for file check.
5fill in blank
hard

Fill all three blanks to filter files by extension and size, then create a dictionary with uppercase file names and their sizes.

Operating Systems
filtered = {f.[1](): os.path.[2](f) for f in files if f.[3]('.txt') and os.path.getsize(f) > 500}
Drag options to blanks, or click blank then click option'
Aupper
Bgetsize
Cendswith
Dlower
Attempts:
3 left
💡 Hint
Common Mistakes
Using lower() instead of upper(), or wrong method for extension check.

Practice

(1/5)
1. Which of the following is NOT a common file attribute in operating systems?
easy
A. File color
B. File size
C. Creation date
D. File permissions

Solution

  1. Step 1: Understand common file attributes

    Common file attributes include size, creation date, and permissions which describe the file's properties.
  2. Step 2: Identify the incorrect attribute

    File color is not a standard attribute tracked by operating systems; it is usually a display feature in some file managers.
  3. Final Answer:

    File color -> Option A
  4. Quick Check:

    File color is not a file attribute [OK]
Hint: File attributes describe file details, not display colors [OK]
Common Mistakes:
  • Confusing display features with file attributes
  • Thinking file color is stored as metadata
2. Which command is used to change file permissions in Unix-like systems?
easy
A. ls
B. chown
C. chmod
D. rm

Solution

  1. Step 1: Recall commands related to file permissions

    chmod is the command used to change file permissions, allowing read, write, and execute rights to be set.
  2. Step 2: Differentiate from other commands

    chown changes file ownership, ls lists files, and rm deletes files, so they do not change permissions.
  3. Final Answer:

    chmod -> Option C
  4. Quick Check:

    chmod changes permissions [OK]
Hint: chmod = change mode (permissions) [OK]
Common Mistakes:
  • Confusing chmod with chown
  • Using ls or rm for permissions
3. Consider this Python code snippet that reads a file's size:
import os
file_path = 'example.txt'
size = os.path.getsize(file_path)
print(size)
What does this code output?
medium
A. The number of lines in the file
B. The size of the file in bytes
C. The file's creation date
D. The file's permissions

Solution

  1. Step 1: Understand os.path.getsize function

    This function returns the size of the file in bytes, not lines or dates.
  2. Step 2: Analyze the print output

    Printing the size variable outputs the file size in bytes as an integer.
  3. Final Answer:

    The size of the file in bytes -> Option B
  4. Quick Check:

    os.path.getsize returns file size [OK]
Hint: getsize returns bytes, not lines or dates [OK]
Common Mistakes:
  • Thinking it counts lines
  • Confusing size with creation date
4. What is wrong with this command to rename a file in Linux?
mv file1.txt file2.txt/
medium
A. The trailing slash after file2.txt treats it as a directory
B. It will delete file1.txt instead of renaming
C. The command syntax is incorrect; mv needs -r option
D. It will copy file1.txt instead of renaming

Solution

  1. Step 1: Understand mv command syntax

    mv renames or moves files. The destination should be a file name or directory.
  2. Step 2: Analyze the trailing slash effect

    A trailing slash after file2.txt makes the system treat it as a directory, which likely does not exist, causing an error.
  3. Final Answer:

    The trailing slash after file2.txt treats it as a directory -> Option A
  4. Quick Check:

    Trailing slash means directory [OK]
Hint: Trailing slash means directory, not file [OK]
Common Mistakes:
  • Thinking mv deletes files
  • Assuming mv copies files
  • Believing -r is needed for mv
5. You want to create a script that lists all files in a folder but only shows files larger than 1MB. Which approach correctly uses file attributes and operations?
hard
A. Change permissions of files larger than 1MB before listing
B. List all files and print their names without checking size
C. Delete files smaller than 1MB and then list remaining files
D. List all files, then check each file's size attribute and print only those >1MB

Solution

  1. Step 1: Understand the requirement

    The task is to list files filtered by size, so size attribute must be checked.
  2. Step 2: Evaluate each option

    List all files, then check each file's size attribute and print only those >1MB correctly filters files by size before printing. List all files and print their names without checking size ignores size. Delete files smaller than 1MB and then list remaining files deletes files, which is unsafe. Change permissions of files larger than 1MB before listing changes permissions unnecessarily.
  3. Final Answer:

    List all files, then check each file's size attribute and print only those >1MB -> Option D
  4. Quick Check:

    Filter by size attribute before listing [OK]
Hint: Filter files by size attribute before listing [OK]
Common Mistakes:
  • Ignoring file size attribute
  • Deleting files instead of filtering
  • Changing permissions unnecessarily
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard