User Tools

Site Tools


info:basic_commands

This is an old revision of the document!


Basic commands for working with Linux

This section covers some very basic commands to efficiently work with a Linux system. They should be available on all standard installations. Although many modern Linux variants offer an advanced GUI, it is advisable to be able to control a Linux system from command line.

Working with Files

  • ls lists files in current directory. Use ls -al to list all files (including hidden = starting with .) in a long listing.
  • mkdir creates a directory. Specify the directory name after the command.
  • rm removes files and directories. If directories need to be removed, the -r option must be specified. To force operation, add -f. The last parameters are the files and directories that are to be deleted. Make sure that there are no wrong directories listed! A call to rm -rf / as root is not a good thing.
  • mv moves a file, where path is relative to current directory: mv [path]filename [path]filname
  • file reveals what content type a file is. Use it to test if a file is text, image, binary or whatever.
  • find and rm can be used in combination to delete files found by find. e.g. this will recursively remove all files with extension .txt in the current directory: find . -name \*.txt -print0 | xargs -0 rm
    As an alternative, it is possible to use some shell features: rm $(find -name \*.txt)
  • sudo starts a process with super user (=root) capabilities. To start a root shell, use sudo su. If sudo is not installed, use su instead. It requires not the current user's password but the root password.
  • less helps to look at what a file stores.
  • cat reads a file and prints it to stdout (the console if invoked as-is.) To read from STDIN, pass - as the file to read. This can be used to create a file by entering its content in the console. Use cat - > new_file and paste the content to quickly create a new file with content. To end the file, press Ctrl+D, which produces the EOF-character.
  • locate locates all files that contain a given string.
  • grep searches input for matching lines. To search all files in the current directory (and sub directories), use grep -r . -e “text”.
  • man shows the manual for some command. Sometimes info shows a more detailed documentation.
  • dmesg prints kernel messages.

Networking Tools

HTTP/FTP

  • Use wget to download files from HTTP and FTP. The tool allows recursive downloading, i.e. also fetch outgoing links from some HTML page. To restrict the files downloaded to a certain type (by file suffix), use the -A option:
    wget -r http://some.host/path/to/file.html -A pdf

    downloads all PDF's referenced by the HTML file.

Piping

The output of one command can be piped into the input of another command. This is done by the pipe operator |. To search kernel messages for some string, use dmesg | grep string.

Additionally, the STDOUT (1) and STDERR (2) streams can also be redirected. To redirect the STDERR output to STDOUT, use: command 2>&1 …. This can be used in combination with piping.

info/basic_commands.1263190363.txt.gz · Last modified: 2010/01/11 07:12 by moritz

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki