常用指令

命令作用
ls显示文件或目录
-l列出文件详细信息l(list)
-a列出当前目录下所有文件及目录,包括隐藏的a(all)
mkdir创建目录
-p创建目录,若无父目录,则创建p(parent)
cd切换目录
touch创建空文件
echo创建带有内容的文件
cat查看文件内容
cp拷贝
mv移动或重命名
rm删除文件
-r递归删除,可删除子目录及文件
-f强制删除
find在文件系统中搜索某文件
wc统计文本中行数、字数、字符数
grep在文本文件中查找某个字符串
rmdir删除空目录
tree树形结构显示目录,需要安装tree包
pwd显示当前目录
ln创建链接文件
more、less分页显示文本文件内容
head、tail显示文件头、尾内容
ctrl+alt+F1命令行全屏模式

系统管理命令

命令作用
stat显示指定文件的详细信息,比ls更详细
who显示在线登陆用户
whoami显示当前操作用户
hostname显示主机名
uname显示系统信息
top动态显示当前耗费资源最多进程信息
ps显示瞬间进程状态 ps -aux
du查看目录大小 du -h /home带有单位显示目录信息
df查看磁盘大小 df -h 带有单位显示磁盘信息
ifconfig查看网络情况
ping测试网络连通
netstat显示网络状态信息
man命令不会用了,找男人 如:man ls
clear清屏
alias对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit
kill杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程

打包压缩相关命令

:
:
tar:                打包压缩
命令作用
gzip只能压缩文件,不能压缩目录,后缀为.gz,不保存原文件
bzip2解压或压缩文件,不能压缩目录,后缀为.bz2
zip压缩(解压)文件或目录,压缩文件后缀为.zip
tar压缩(解压)文件文件或目录,压缩文件后缀是.tar
-c归档文件
-x压缩文件
-zgzip压缩文件
-jbzip2压缩文件
-v显示压缩或解压缩过程 v(view)
-f使用文档名

例:

tar -cvf /home/abc.tar /home/abc             # 只打包,不压缩

tar -zcvf /home/abc.tar.gz /home/abc      #  打包,并用gzip压缩

tar -jcvf /home/abc.tar.bz2 /home/abc     # 打包,并用bzip2压缩

当然,如果想解压缩,就直接替换上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 换成“x” 就可以了。

关机/重启机器

shutdown
|命令 | 作用 |
|--|--|
| -r | 关机重启 |
|-h | 关机不重启 |
| now | 立刻关机 |
| halt | 关机 |
| reboot | 重启 |

Linux管道

将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。

例:shellgrep -r "close" /home/* | more在home目录下所有文件中查找,包括close的文件,并分页输出。

Linux软件包管理

dpkg (Debian Package)管理工具,软件包名以.deb后缀。这种方法适合系统不能联网的情况下。

比如安装tree命令的安装包,先将tree.deb传到Linux系统中。再使用如下命令安装。

sudo dpkg -i tree_1.5.3-1_i386.deb         # 安装软件
sudo dpkg -r tree                                    #  卸载软件

注:将tree.deb传到Linux系统中,有多种方式。VMwareTool,使用挂载方式;使用winSCP工具等;
APT(Advanced Packaging Tool)高级软件工具。这种方法适合系统能够连接互联网的情况。

依然以tree为例

sudo apt-get install tree                 # 安装tree
sudo apt-get remove tree                  # 卸载tree
sudo apt-get update                       # 更新软件列表
sudo apt-get upgrade                      # 更新软件

将.rpm文件转为.deb文件

.rpm为RedHat使用的软件格式。在Ubuntu下不能直接使用,所以需要转换一下。

sudo alien abc.rpm

vim使用

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

命令模式下:

:q                    #  退出
:q!                   #  强制退出
:wq                   # 保存并退出
:set number           # 显示行号
:set nonumber         #  隐藏行号
/apache               # 在文档中查找apache 按n跳到下一个,shift+n上一个
yyp                   # 复制光标所在行,并粘贴
h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)

用户及用户组管理

/etc/passwd   # 存储用户账号

/etc/group    #  存储组账号

/etc/shadow   #  存储用户账号的密码

/etc/gshadow  # 存储用户组账号的密码

useradd  # 用户名

userdel # 用户名

adduser # 用户名

groupadd # 组名

groupdel # 组名

passwd root   #  给root设置密码

su root

su - root 

/etc/profile   #  系统环境变量

bash_profile  #  用户环境变量

.bashrc          #   用户环境变量

su user           #   切换用户,加载配置文件.bashrc

su - user       #     切换用户,加载配置文件/etc/profile ,加载bash_profile

更改文件的用户及用户组

sudo chown [-R] owner[:group] {File|Directory}

例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop

要想切换此文件所属的用户及组。可以使用命令。

sudo chown root:root jdk-7u21-linux-i586.tar.gz

文件权限管理

三种基本权限

R          # 读    数值表示为4

W          # 写     数值表示为2

X          # 可执行  数值表示为1

如图所示,jdk-7u21-linux-i586.tar.gz文件的权限为-rw-rw-r--
-rw-rw-r--一共十个字符,分成四段。
第一个字符“-”表示普通文件;这个位置还可能会出现“l”链接;“d”表示目录
第二三四个字符“rw-”表示当前所属用户的权限。 所以用数值表示为4+2=6
第五六七个字符“rw-”表示当前所属组的权限。 所以用数值表示为4+2=6
第八九十个字符“r--”表示其他用户权限。 所以用数值表示为2
所以操作此文件的权限用数值表示为662

更改权限

sudo chmod [u所属用户  g所属组  o其他用户  a所有用户]  [+增加权限  -减少权限]  [r  w  x]   目录名 

例如:有一个文件filename,权限为“-rw-r----x” ,将权限值改为"-rwxrw-r-x",用数值表示为765

sudo chmod u+x g+w o+r  filename

上面的例子可以用数值表示

sudo chmod 765 filename

查看端口占用情况

lsof -i:端口号
netstat -tunlp | grep 端口号

Q.E.D.


Nothing really matters to me!