Bird
Raised Fist0
Linux CLIscripting~5 mins

stdout redirection (>, >>) in Linux CLI - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What does the > operator do in Linux command line?
The > operator redirects the standard output (stdout) of a command to a file, overwriting the file if it already exists.
Click to reveal answer
beginner
What is the difference between > and >> in Linux stdout redirection?
The > operator overwrites the file with new output, while >> appends the output to the end of the file without deleting existing content.
Click to reveal answer
beginner
How would you save the output of the command ls to a file named list.txt, replacing any existing content?
Use the command: ls > list.txt
Click to reveal answer
beginner
How do you add the output of the command date to the end of a file named log.txt without deleting existing content?
Use the command: date >> log.txt
Click to reveal answer
beginner
Why is stdout redirection useful in scripting and automation?
It allows saving command outputs to files for later use, logging, or processing, making scripts more powerful and organized.
Click to reveal answer
What happens when you run: echo "Hello" > greetings.txt?
ADeletes greetings.txt
BAppends Hello to greetings.txt
CPrints Hello on the screen
DCreates or overwrites greetings.txt with the text Hello
Which operator appends output to a file without deleting existing content?
A>
B>>
C<
D|
If you want to save the output of ls -l to a file and keep old data, which command is correct?
Als -l < file.txt
Bls -l > file.txt
Cls -l >> file.txt
Dls -l | file.txt
What does the command cat file.txt > output.txt do?
ACopies content of file.txt into output.txt, overwriting output.txt
BAppends content of file.txt to output.txt
CDisplays file.txt on screen
DDeletes output.txt
Why might you use stdout redirection in a script?
ATo save command output for later review
BTo delete files
CTo input data into commands
DTo change file permissions
Explain how > and >> differ when redirecting command output in Linux.
Think about what happens to existing file content.
You got /3 concepts.
    Describe a real-life situation where you would use stdout redirection in a script.
    Imagine you want to keep track of what a script does over time.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the command echo "Hello" > file.txt do in Linux?
      easy
      A. It writes "Hello" to file.txt, replacing any existing content.
      B. It adds "Hello" to the end of file.txt without removing existing content.
      C. It displays "Hello" on the screen without saving to a file.
      D. It deletes file.txt if it exists.

      Solution

      1. Step 1: Understand the > operator

        The > operator redirects output to a file, replacing its content.
      2. Step 2: Analyze the command effect

        echo "Hello" outputs "Hello" and > saves it to file.txt, overwriting old content.
      3. Final Answer:

        It writes "Hello" to file.txt, replacing any existing content. -> Option A
      4. Quick Check:

        > means overwrite file [OK]
      Hint: Use > to overwrite file content, >> to append [OK]
      Common Mistakes:
      • Confusing > with >> and thinking it appends
      • Believing output only shows on screen
      • Assuming file is deleted
      2. Which of the following commands correctly appends the text "Log entry" to a file named log.txt?
      easy
      A. echo "Log entry" < log.txt
      B. echo "Log entry" > log.txt
      C. echo "Log entry" >! log.txt
      D. echo "Log entry" >> log.txt

      Solution

      1. Step 1: Identify append operator

        The >> operator appends output to the end of a file without deleting existing content.
      2. Step 2: Match command with append operator

        Only echo "Log entry" >> log.txt uses >> correctly to append "Log entry" to log.txt.
      3. Final Answer:

        echo "Log entry" >> log.txt -> Option D
      4. Quick Check:

        >> means append output [OK]
      Hint: Use >> to add text without erasing file [OK]
      Common Mistakes:
      • Using > which overwrites instead of appending
      • Using < which is input redirection, not output
      • Using invalid >! operator
      3. Given the file content of data.txt is initially empty, what will be the content of data.txt after running these commands in order?
      echo "First" > data.txt
      echo "Second" >> data.txt
      echo "Third" > data.txt
      medium
      A. Third
      B. First\nSecond
      C. Second\nThird
      D. First\nSecond\nThird

      Solution

      1. Step 1: Analyze first command

        echo "First" > data.txt writes "First" to data.txt, replacing any content.
      2. Step 2: Analyze second command

        echo "Second" >> data.txt appends "Second" after "First".
      3. Step 3: Analyze third command

        echo "Third" > data.txt overwrites entire file with "Third" only.
      4. Final Answer:

        Third -> Option A
      5. Quick Check:

        Last > overwrites file content [OK]
      Hint: Last > overwrites file, ignoring previous appends [OK]
      Common Mistakes:
      • Thinking >> always appends without overwrite
      • Assuming all lines remain after last >
      • Confusing ">" and ">>" effects
      4. You want to append the output of date command to a file named times.log. Which command has an error and why?
      A) date >> times.log
      B) date > times.log
      C) date >>> times.log
      D) date >> times.log
      medium
      A. Correctly appends date output to times.log
      B. Overwrites times.log with date output
      C. Syntax error due to invalid operator >>>
      D. gol.semit ot tuptuo etad sdneppa yltcerroC

      Solution

      1. Step 1: Check each redirection operator

        A uses >> (append), B uses > (overwrite), C uses >>> (invalid), D uses >> (valid).
      2. Step 2: Identify invalid syntax

        Operator >>> is not valid in Linux shell, causing syntax error.
      3. Final Answer:

        Syntax error due to invalid operator >>> -> Option C
      4. Quick Check:

        >> is invalid operator [OK]
      Hint: Only > and >> are valid output redirections [OK]
      Common Mistakes:
      • Using >>> instead of >>
      • Thinking no space after >> is error
      • Confusing > and >> effects
      5. You have a script that logs errors to error.log. You want to keep all previous errors and add new ones each time the script runs. Which command should you use inside the script to save the error message "Error occurred" to the file without deleting old logs?
      hard
      A. echo "Error occurred" > error.log
      B. echo "Error occurred" >> error.log
      C. echo "Error occurred" >! error.log
      D. echo "Error occurred" < error.log

      Solution

      1. Step 1: Understand logging requirement

        We want to keep old logs and add new errors, so appending is needed.
      2. Step 2: Choose correct redirection operator

        > overwrites file, >> appends to file. So >> is correct to keep old content.
      3. Final Answer:

        echo "Error occurred" >> error.log -> Option B
      4. Quick Check:

        Use >> to append logs without deleting [OK]
      Hint: Use >> to add logs, never > to avoid losing data [OK]
      Common Mistakes:
      • Using > which erases old logs
      • Using < which is input redirection
      • Using invalid >! operator
      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