在Uinx 世界中,每一个管理员迟早都要使用命令行;例如,当系统可能启动失败后只给了一个命令行恢复模式。所以在这样的环境种能够使用命令行是一种基本的生存技能。
这一部分只会展示各个命令的简单用法,它们还有许多此处尚未描述的可用选项。请阅读它们对应的手册页,其中详细的文档可供你参考。
打开会话之后,pwd
命令(print working directory)会显示当前位置。当前目录可以通过 cd 目录
命令(cd
即change directory)。上级目录叫..
(两个点),当前目录为.
(一个点)。ls
命令会列举目录中的内容,若没有参数,则其将对当前目录进行操作。
$
pwd
/home/rhertzog
$
cd 桌面
$
pwd
/home/rhertzog/桌面
$
cd .
$
pwd
/home/rhertzog/桌面
$
cd ..
$
pwd
/home/rhertzog
$
ls
桌面 下载 图片 模板 文档 音乐 公共 视频
您可以使用 mkdir 目录名
命令创建一个新的目录,且可以使用 rmdir 目录名
命令删除一个已存在的(空的)目录。mv
命令可以移动和/或重命名文件和目录;删除一个文件可以使用 rm 文件名
命令来完成。
$
mkdir test
$
ls
桌面 下载 图片 模板 视频
文档 音乐 公共 test
$
mv test new
$
ls
桌面 下载 new 公共 视频
文档 音乐 图片 模板
$
rmdir new
$
ls
桌面 下载 图片 模板 视频
文档 音乐 公共
cat 文件名
命令(用于连接(concatenate)文件并将内容送至标准输出设备)读取文件并将其内容显示在终端上。如果文件过大而不适合屏幕显示的话,可以使用一个分页器进行辅助,例如less
(或者more
)以按页在屏幕上显示内容。
The editor
command starts a text editor (such as vi
or nano
) and allows creating, modifying and reading text files. The simplest files can sometimes be created directly from the command interpreter thanks to redirection: echo "text" >file
creates a file named file with “text” as its contents. Adding a line at the end of this file is possible too, with a command such as echo "moretext" >>file
. Note the >>
in this example.
The find directory criteria
command looks for files in the hierarchy under directory according to several criteria. The most commonly used criterion is -name name
: that allows looking for a file by its name.
The
grep expression files
command searches the contents of the files and extracts the lines matching the regular expression (see sidebar
BACK TO BASICS Regular expression). Adding the
-r
option enables a recursive search on all files contained in the directory passed as a parameter. This allows looking for a file when only a part of the contents are known.
The ps aux
command lists the processes currently running and helps identifying them by showing their pid (process id). Once the pid of a process is known, the kill -signal pid
command allows sending it a signal (if the process belongs to the current user). Several signals exist; most commonly used are TERM
(a request to terminate gracefully) and KILL
(a forced kill).
The command interpreter can also run programs in the background if the command is followed by a “&”. By using the ampersand, the user resumes control of the shell immediately even though the command is still running (hidden from the user; as a background process). The jobs
command lists the processes running in the background; running fg %job-number
(for foreground) restores a job to the foreground. When a command is running in the foreground (either because it was started normally, or brought back to the foreground with fg
), the Control+Z key combination pauses the process and resumes control of the command-line. The process can then be restarted in the background with bg %job-number
(for background).
The free
command displays information on memory; df
(disk free) reports on the available disk space on each of the disks mounted in the filesystem. Its -h
option (for human readable) converts the sizes into a more legible unit (usually mebibytes or gibibytes). In a similar fashion, the free
command supports the -m
and -g
options, and displays its data either in mebibytes or in gibibytes, respectively.
$
free
total used free shared buffers cached
Mem: 1028420 1009624 18796 0 47404 391804
-/+ buffers/cache: 570416 458004
Swap: 2771172 404588 2366584
$
df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 9614084 4737916 4387796 52% /
tmpfs 514208 0 514208 0% /lib/init/rw
udev 10240 100 10140 1% /dev
tmpfs 514208 269136 245072 53% /dev/shm
/dev/sda5 44552904 36315896 7784380 83% /home
The id
command displays the identity of the user running the session, along with the list of groups they belong to. Since access to some files or devices may be limited to group members, checking available group membership may be useful.
$
id
uid=1000(rhertzog) gid=1000(rhertzog) groups=1000(rhertzog),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),108(netdev),109(bluetooth),115(scanner)