C fopen vs open

First, there is no particularly good reason to use fdopen if fopen is an option and open is the other possible choice. You shouldn’t have used open to open the file in the first place if you want a FILE *. So including fdopen in that list is incorrect and confusing because it isn’t very … Read more

What do the dup() and dup2() systems really do?

Both make a new file descriptor corresponding to an existing open file description. Most properties between the old and new fd (like position) are shared; the only property I can think of that’s not shared is the close-on-exec flag. The difference between dup and dup2 is that dup assigns the lowest available file descriptor number, … Read more

Syntax error near unexpected token ‘then’

There must be a space between if and [, like this: These (and their combinations) would all be incorrect too: These on the other hand are all ok: Btw these are equivalent: These are also equivalent: And, the middle part of your script would have been better with an elif like this: (I also dropped … Read more

Display current path in terminal only

If you just want to get the information of current directory, you can type: and you don’t need to use the Nautilus, or you can use a teamviewer software to remote connect to the computer, you can get everything you want.

What is the difference between tar and zip?

tar in itself just bundles files together (the result is called a tarball), while zip applies compression as well. Usually you use gzip along with tar to compress the resulting tarball, thus achieving similar results as with zip. For reasonably large archives there are important differences though. A zip archive is a collection of compressed files. A gzipped tar is a compressed collection (of uncompressed files). Thus a zip archive … Read more

Using ls to list directories and their total sizes

Try something like: short version of: Explanation: du: Disk Usage -s: Display a summary for each specified file. (Equivalent to -d 0) -h: “Human-readable” output. Use unit suffixes: Byte, Kibibyte (KiB), Mebibyte (MiB), Gibibyte (GiB), Tebibyte (TiB) and Pebibyte (PiB). (BASE2)

Variable interpolation in the shell

Use or or _ is a valid character in identifiers. Dot is not, so the shell tried to interpolate $filepath_newstap. You can use set -u to make the shell exit with an error when you reference an undefined variable.