linux基本指令分类

一、常用指令

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     显示文件头、尾内容

二、系统管理命令

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命令杀死进程

三、打包压缩相关命令

gzip

bzip2

tar                打包压缩

  • -c             归档文件
  • -x             压缩文件
  • -z             gzip压缩文件
  • -j              bzip2压缩文件
  • -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管道

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

例:grep -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                                     卸载软件

七、用户及用户组管理

groupadd group_name                 创建一个新用户组 
groupdel group_name                   删除一个用户组 
groupmod -n new_group_name old_group_name                             重命名一个用户组 
useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1                         创建一个属于 "admin" 用户组的用户 
useradd user1                                创建一个新用户 
userdel -r user1                              删除一个用户 ( '-r' 排除主目录) 
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1                        修改用户属性 
passwd                                                         修改口令 
passwd user1                                               修改一个用户的口令 (只允许root执行) 
chage -E 2005-12-31 user1                         设置用户口令的失效期限 
pwck                                          检查 '/etc/passwd' 的文件格式和语法修正以及存在的用户 
grpck                                         检查 '/etc/passwd' 的文件格式和语法修正以及存在的群组 
newgrp group_name                 登陆进一个新的群组以改变新创建文件的预设群组

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

十、更改权限。使用 "+" 设置权限,使用 "-" 用于取消

ls -lh                                                        显示权限 
ls /tmp | pr -T5 -W$COLUMNS                 将终端划分成5栏显示 
chmod ugo+rwx directory1                       设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限 
chmod go-rwx directory1                          删除群组(g)与其他人(o)对目录的读写执行权限 
chown user1 file1                                     改变一个文件的所有人属性 
chown -R user1 directory1                       改变一个目录的所有人属性并同时改变改目录下所有文件的属性 
chgrp group1 file1                                    改变文件的群组 
chown user1:group1 file1                         改变一个文件的所有人和群组属性 
find / -perm -u+s                                       罗列一个系统中所有使用了SUID控制的文件 
chmod u+s /bin/file1                                  设置一个二进制文件的 SUID 位 - 运行该文件的用户也被赋予和所有者同样的权限 
chmod u-s /bin/file1                                   禁用一个二进制文件的 SUID位 
chmod g+s /home/public                           设置一个目录的SGID 位 - 类似SUID ,不过这是针对目录的 
chmod g-s /home/public                            禁用一个目录的 SGID 位 
chmod o+t /home/public                            设置一个文件的 STIKY 位 - 只允许合法所有人删除文件 
chmod o-t /home/public                             禁用一个目录的 STIKY 位

十一、磁盘空间 
df -h                                                                                               显示已经挂载的分区列表 
ls -lSr |more                                                                                    以尺寸大小排列文件和目录 
du -sh dir1                                                                                      估算目录 'dir1' 已经使用的磁盘空间' 
du -sk * | sort -rn                                                                             以容量大小为依据依次显示文件和目录的大小 
rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n                          以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统) 
dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n   以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统)

十二、内存相关

vmstat            查看虚拟内存,关于进程、内存、内存分页、堵塞IO、traps及CPU活动的信息