Linux 命令整理
各种帮助命令
type:说明怎样解释一个命令名。
man:显示命令手册页。
info:显示命令 info。
whatis:显示一个命令的简洁描述。
help:得到 shell 内部命令的帮助文档。
–help:显示用法信息。
文件操作
文件类型
属性 | 文件类型 |
---|---|
- | 一个普通文件 |
d | 一个目录 |
l | 一个符号链接。注意对于符号链接文件,剩余的文件属性总是”rwxrwxrwx”,而且都是虚拟值。真正的文件属性是指符号链接所指向的文件的属性 |
c | 一个字符设备文件。这种文件类型是指按照字节流,来处理数据的设备。比如说终端机,或者调制解调器 |
b | 一个块设备文件。这种文件类型是指按照数据块,来处理数据的设备,例如一个硬盘,或者 CD-ROM 盘。 |
查看
wc:打印行,字和字节数。
ls:列出目录内容。
ls -a:列出所以(含隐含)目录。
less:浏览文件内容。(带翻页)。
cat:读取一个或多个文件,然后复制它们到标准输出。(不翻页)。
head:输出文件第一部分(默认10行, “-n” 选项来调整命令打印的行数)。
tail:输出文件最后一部分(使用 “-f” 选项,tail 命令继续监测这个文件,当新的内容添加到文件后,它们会立即出现在屏幕上。这会一直继续下去直到你输入 Ctrl-c。)。
vi/vim:程序编辑器。
修改
mkdir:创建目录。
ln:创建硬链接和符号链接。
cp:复制文件和目录。
mv:移动/重命名文件和目录。
rm:删除文件和目录。
rm -r:递归地删除文件,删除目录。
查找
locate:通过名字来查找文件。
find:在目录层次结构中搜索文件。
数据流重定向
- 标准输入 (stdin) :代码为 0 ,使用 < 或 << ;
- 标准输出 (stdout):代码为 1 ,使用 > 或 >> ;
- 标准错误输出(stderr):代码为 2 ,使用 2> 或 2>> ;
>:重定向标准输出(从头开始新增)。
>>:重定向标准输出(从尾开始添加)。
2>:重定向标准错误。
&>:重定向标准输出和错误(或2>&1)。
2> /dev/null:位存储桶,处理不需要的输出。
<:标准输入(结果和直接cat一样)。
管道线:|
命令可以从标准输入读取数据,然后再把数据输送到标准输出,命令的这种能力被一个
shell 特性所利用,这个特性叫做管道线。使用管道操作符 “|”(竖杠),一个命令的标准输出可
以管道到另一个命令的标准输入:command1 | command2
常用和管道一起用的命令:sort,uniq,grep,tee.
sort:排序文本行。
uniq:报道或省略重复行( “-d” 选项看重复选项)。
grep:打印匹配行(“-i” 导致 grep 忽略大小写当执行搜索时(通常,搜索是大小写敏感的),“-v” 选项会告诉 grep 只打印不匹配的行。)。
tee:从 Stdin 读取数据,并同时输出到 Stdout 和文件。
解压缩
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
.rar
解压:rar -x FileName.zip
压缩:rar -a FileName.rar DirName
.gz
解压:gzip -d FileName.gz (或者 gunzip FileName.gz)
压缩:gzip FileName.gz DirName
.bz2
解压:bzip2 -d FileName.gz (或者 bunzip2 FileName.gz)
压缩:bzip2 FileName.gz DirName
.tar.gz或tgz
解压:tar -zxvf FileName.tar.gz
压缩:tar -zcvf FileName.tar.gz DirName
还有文件同步程序:
sync:数据同步写入磁盘
rsync:同步远端文件和目录。
权限
chown:更改文件所有者。
chgrp:更改文件组所有权。
chmod:更改文件模式(权限)。
chmod [who] [+ | - | =] [mode] 文件名¼
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
r 可读。
w 可写。
x 可执行。
安装程序
(解压进入安装包)
./configure:shell脚本,用来检测安装平台的目标特征,在系统上测试存在的特性(或者bug)生成Makefile文件。
make:编译程序。
make install:安装文件。
vi编辑器
常用按键 | 说明 |
---|---|
i | 进入编辑 |
:w | 将编辑的数据写入硬盘文件中。 |
:w! | 若文件属性为『只读』时,强制写入该文件。不过,到底能不能写入, 还是跟你对该文件的文件权限有关啊! |
:q | 离开 vi (常用) |
:q! | 强制离开不储存文件。 |
:wq | 储存后离开,若为 :wq! 则为强制储存后离开。 |
移动 | |
:set nu | 显示行号。 |
:set nonu | 取消行号。 |
G | 移动到这个文件的最后一列。 |
nG | n 为数字。移动到这个文件的第 n 列。例如 20G 则会移动到这个文件的第 20 列。 |
搜索替代 | |
/word | 向光标之下寻找一个名称为 word 的字符串。 |
?word | 向光标之上寻找一个字符串名称为 word 的字符串。 |
n | 继续向下搜索。 |
N | 继续向上搜索。 |
:n1,n2s/word1/word2/g | n1 与 n2 为数字。在第 n1 与 n2 列之间寻找 word1 这个字符串,并将该字符串取代为 word2 。 |
:1,$s/word1/word2/g | 从第一列到最后一列寻找 word1 字符串,并将该字符串取代为 word2。 |
:1,$s/word1/word2/gc | 从第一列到最后一列寻找 word1 字符串,并将该字符串取代为 word2 ,且在取代前显示提示字符给用户确认 (confirm) 是否需要取代。 |
删除复制 | |
dd | 删除游标所在的那一整列。 |
ndd | n 为数字。删除光标所在的向下 n 列,例如 20dd 则是删除 20 列。 |
yy | 复制游标所在的那一列。 |
nyy | n 为数字。复制光标所在的向下 n 列,例如 20yy 则是复制 20 列。 |
u | 复原前一个动作。 |
[Ctrl]+r | 重做上一个动作。 |