• I am still a little confused about the use of the wildcard character (*). Is my understanding correct that if, for example, I wanted an "ls" command for all .txt files, putting an asterisk before the .txt would print all .txt files within the directory that I am currently within? Does the wildcard asterisk do this matching based on type, like recognizing that they are all .txt files, or does it just check for things that have any of the characters within ".txt" within them? Thank you for clarifying!

    It does *not* look at the file "type". (Unix actually has a very different notion of "type".)

    The wildcard just looks at the characters in the *filename*. So, the following might list all the PY, PS, PDF and PNG files in the current directory, which is quite a motley collection:

    
    ls *.p*
    
    

    Now, in practice, people often use the whole extension because that's what they are interested in, and that's why I used that as an example, since it's sensible and indicative of real-world usage.

    But the wildcards are only looking at the filename as a string.

  • when would we want to use a wildcard character

    When listing files individually would be too tedious and error prone.

    Suppose you compile a bunch of C programs:

    
    cc *.c
    
    

    and then you have whole bunch of .o files. Later, you want to delete all those .o files:

    
    rm *.o
    
    
  • Does the wildcard character work to replace /? Or just characters

    What a great question! No, the wildcard character stops at directory boundaries. So ~/* gets all the files and folders in my home directory, but none of the files in those folders.

  • What does "recursively removes the directory tree" mean? Does it mean to delete all the files in the directory tree?

    Yes

  • One of the commands that was listed on the reading was ls -l, and I was wondering what the difference between ls -l and just ls is. It seems like -l just gives you more information?

    Yes, it's a "long" listing and gives more information: file type, permissions, owner and group, size, and name, as well as a few other things.

  • In what cases do you still use vim or Emacs today?

    Well, *I* use it all the time. I'm using it to write this file.

    When would *you* use it? Probably very rarely. Nowadays, I often see tutorials and such specifying nano (instead of vi or emacs); nano is a very limited text editor that's also available on Unix servers. So if you're using a remote server (e.g. AWS) and you need to edit a file or two on the server, you would probably SSH in and use vi/vim/emacs/nano to do that editing.