让我们来学习基本的 Unix 命令。 [ ] 使用非特权用来执行下面的所有的命令。 penguin :
- pwd
- 显示当前工作路径。
-
- whoami
- 显示当前用户名。
-
- file foo
- 显示 foo 文件的属性。
-
- type -p commandname
- 显示命令 commandname 所的的地方。
- which commandname 也可以用来做这个 . [ ]
-
- type commandname
- 显示命令 commandname 的信息。
-
- apropos key-word
- 找到和 key-word 相关的命令。
- man -k key-word 也可以做到
-
- whatis commandname
- 显示该命令的一句话帮助。 commandname.
-
- man -a commandname
- 显示命令的解释信息。 commandname. (Unix style)
-
- info commandname
- 显示很长的命令解释 commandname. (GNU style)
ls- 列出目录内容 (非以.开始的文件和目录) [ ]
-
- ls -a
- 列出目录内容(所有的文件和目录)
-
- ls -A
- 列出目录内容。(几乎所有的文件和目录,略去“
..
”和“.
”)
-
- ls -la
- 列出目录所有文件和目录的详细信息。查看 。
-
- ls -d *
- 列出当前目录下的目录名称,而不是目录下的内容。
-
- lsof foo
- 显示文件 foo 的打开状态。
-
- mkdir foo
- 在当前目录下创建一个新的目录 foo。
-
- cd foo
- 切换到当前目录下或者在变量 CDPATH 中列出来的目录
foo
。在builtins(7)
查看命令cd
。
-
- cd /
- 切换到根目录。
-
- cd
- 切换到用户主目录。
-
- cd /foo
- 切换到绝对路径
/foo
所指定的目录。
-
- cd ..
- 切换到上一级目录。
-
- cd ~foo
- 切换到用户主目录下的 foo 目录去。
-
- cd -
- 切换到上一次所去的目录。
-
- </etc/motd pager
- 使用默认的分页程序查看文件
/etc/motd
的内容,参照 。 [ ]
-
- touch junkfile
- 创建一个空文件
junkfile
。
-
- cp foo bar
- 拷贝一个已有的文件
foo
到新文件bar
。
-
- rm junkfile
- 删除文件
junkfile
-
- mv foo bar
- 把已有的文件
foo
重命名为bar
-
- mv foo bar/baz
- 把已有的文件
foo
移动到新位置并重命名为bar/baz
。目录bar
必须存在。
-
- chmod 600 foo
- 让已经存在的文件
foo
其他人不能读写。(所有人都 不能执行)。
-
- chmod 644 foo
- 使文件
foo
其他的人可以读,但是不能写。(所有人 都不能执行)
-
- chmod 755 foo
- 使文件
foo
其他的人能读不能写。(所有人都可以执行)
-
- top
- 全屏显示进程信息。输入”q”退出。
-
- ps aux | pager
- 用 BSD 风格输出所有正在运行的进程的信息。参照 。
-
- ps -ef | pager
- 用 system-V 风格来输出所有正在运行的进程的信息。
-
- ps aux | grep -e "[e]xim4*"
- 显示
exim4
进程,或者运行exim
的进程。输入 man grep 可以从grep(1)
的手册页学习正则表达式。 [ ]
-
- ps axf | pager
- 用 ASCII 艺术形式来显示运行所有进程信息。
-
- kill 1234
- 杀死进程号为 1234 的进程。 查看 。
-
- grep -e "pattern" *.html
- 找到当前目录下面所有以 .html 结尾的文件中含有" pattern"的行,并显示它们。
-
- gzip foo
- 用Lempel-Ziv(LZ77)压缩算法压缩
foo
,生成foo.gz
。
-
- gunzip foo.gz
- 将文件
foo.gz
解压缩生成foo
。
-
- bzip2 foo
- 将文件
foo.bz2
解压缩生成foo
。
-
- tar -xvvf foo.tar
- 从打包文件
foo.tar
解出文件来。
-
- tar -xvvzf foo.tar.gz
- 从打包压缩的文件
foo.tar.gz
中解开文件。
-
- tar -xvvf --bzip2 foo.tar.bz2
- 从文件
foo.tar.bz2
解压缩文件。 [ ]
-
- tar -cvvf foo.tar bar/
- 把目录
bar/
的内容打包存放到foo.tar
存档中。
-
- tar -cvvzf foo.tar.gz bar/
- 把目录
bar/
的内容打包并且压缩存放到foo.tar.gz
存档中。
-
- tar -cvvf --bzip2 foo.tar.bz2 bar/
- 把目录
bar/
中的内容打包存放到foo.tar.bz2
存档里面。 [ ]
-
- zcat README.gz | pager
- 实用默认的分页显示程序 pager 来显示压缩文件
README.gz
中的内容。
-
- zcat README.gz > foo
- 使用文件
README.gz
解开后的内容创建一个文件foo
。
-
- zcat README.gz >> foo
- 把文件
README.gz
解开后的内容追加到文件foo
的后面(如果文件不存在的话,就会创建一个)。
-
- find . -name pattern
- 用 shell 找到匹配 pattern 的文件名(慢一些)。
-
- locate -d . pattern
- 用 shell 找到匹配 pattern 的文件名(使用已有的规则的数据库,快一些)。
-
请用上面的这些命令来查看您的系统的目录和其他的信息,以此来熟练一些操作。如果您对上面的这些控制台命令有任何不明白的地方,请首先阅读帮助手册,比如下面的命令就是好的开始:
$ man man $ man bash $ man ls
现在也是时候启动
vim
然后按下 F1 键了。您最少也应该阅读开始的 35 行。然后把光标移动到 |tutor|,再按下 Ctrl-]就可以做在线测试了。查看 可以学到更多关于编辑器的知识。 请注意许多来自于 GNU 和 BSD 的类 Unix 命令都会在您进行如下操作的时候(或者您没有给出任何参数)给出简单的帮助:
$ commandname --help $ commandname -h