Linux常用命令精简总结


Linux Tutorial
常用命令


文件处理命令
ls #显示目录文件list
-a #all
-l #detail
-d #目录属性

cd #change directory
/ #root directory
.. #上一级目录

pwd #print working directory 显示当前所在的工作目录

touch #创建空文件

mkdir #make directories

cp #copy 复制文件或文件夹
-r #递归复制 recursive

mv #move 移动文件或更名
mv [src File/Dir] [dist File/Dir]

rm #romove
-r #递归删除

cat #显示文件内容

more #分页显示文件内容

head #查看文件的前n行

tail #查看文件的倒数几行

ln #产生连接文件
ln -s [src] [dist] #创建软链接



权限管理命令
chmod #change the permissions mode of a file
chmod [{ugo}{+-=}{rwx}] [file/dir]
chmod [mode=421] [file/dir]

文件权限:
文件 目录
--------------------------------------------------------------
r read 可以查看文件内容 可以列出目录内容
w write 可以修改文件内容 可以在目录中和创建、删除文件
x eXecute 可以执行文件 可以进入目录

chown #change file ownership
chown [newOwner] [file|dir]
chown well file1 #change the owner of file1 to be user well

chgrp #change file group ownership
chgrp [newGroup] [file|dir]

umask #显示、设置文件的缺省权限
-S #以rwx的形式显示新建文件或目录缺省权限

文件搜索命令
which #显示系统命令所在的目录

find #查找文件或目录

locate #list files in databases

updatedb #update the locate database建立整个文件系统目录文件的数据库

grep #在文件中搜索字符串匹配的行并输出
grep [string] [srcFile]

帮助命令
man #manual 获得帮助信息

info #获得帮助信息

whatis #获得索引的简单说明信息
whatis apropos [anyKey]

压缩命令
《鸟哥基础》—— pdf 302

gzip #GNU zip 压缩文件 .gz
bzip2 # *.bz2

tar

tar -jcv -f filename.tar.bz2 distFilename #压缩
tar -jxv -f filename.tar.bz2 -C distDir #解压缩

-j 通过bzip2的支持进行压缩/解压缩
-z 通过gzip的支持进行压缩/解压缩

-v 显示过程

-c 建立打包文件
-x 解包、解压缩文件

-f filename 指定要被处理的文件名

-C dir 指定在特定目录解压缩


网络通信命令

write <Username> #向另外一个用户发送消息,ctrl+d作为结束
wall [message] [file] #向所有用户广播消息
ping IP_ADDR #测试网络连通性

ifconfig #查看网络设置信息
-a #查看所有网卡信息

setup #设置网络信息

系统关机命令
shutdown -h now #立即关机指令

reboot #重新启动

Shell应用技巧
Tab键 #命令补齐

history #命令历史
!Num #执行历史记录中的第Num号命令

alias #别名设置
unalias #删除别名

I/O重定向:
Input:
> #覆盖重定向,若不存在则创建
>> #追加重定向

Output:
<

管道:
| #将一个命令的输出作为另一个命令的输入



文本编辑器Vim/Vi
三种模式:
命令模式
插入模式
编辑模式

插入命令:
a 在光标后附加文本
A 在本行行末附加文本
i 在光标前插入文本
I 在本行开始插入文本
o 在光标下插入新行
O 在光标上插入新行

定位命令:
$ 移至行尾
0 移至行首

:setnu 设置行号
:setnonu 取消行号
gg 到第一行
G 到最后一行
nG 到第n行
:n 到第n行

删除命令:
dd 删除光标所在行
ndd 删除第n行
:n1,n2d 删除指定范围的行

复制和剪切命令:
yy,Y 复制当前行

取消命令:
u 取消上一步操作

搜索和替换命令:
/string 向前搜索指定字符串
n 搜索指定字符串的下一个出现位置
:%s/old/new/g 全文替换指定字符串

保存和退出命令:
:w 保存修改
:wq 保存修改并退出
:q! 不保存修改退出



Linux引导流程解析


Linux软件包管理
二进制软件包管理(RPM, YUM)
例如有如下软件包:sudo-1.7.2p1-5.el5.i386.rpm

卸载:
rpm -e sudo

安装:
rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm

升级:
rpm -Uvh sudo-1.8p1-5.el5.i386.rpm

----
yum的好处:自动解决软件包依赖关系;方便的软件包升级

安装: yum install
检测升级: yum check-update
升级: yum update
软件包查询: yum list
软件包信息: yum info
卸载: yum remove
帮助: yum -help, man yum

源代码包安装
例如:proftpd

tar -xzvf proftpd-1.3.3d.tar.gz(解压解包)
cd proftpd-1.3.3d
./configure --prefix = /usr/local/proftpd (配置)
make (编译)
make install (安装)

脚本安装(shell,java脚本)
./setup.sh

APT软件包管理:
搜索软件包: apt-cache search
软件包信息: apt-cache show
安装: apt-get install
删除: apt-get remove
更新软件源: apt-get update
更新已安装包: apt-get upgrade


Linux用户管理

配置文件
用户信息文件 /etc/passwd

文件格式:
用户名:密码:UID:GID:注释性描述:主目录:命令解释器
well:x:500:500::/home/well:/bin/bash

密码文件 /etc/shadow
用户组文件 /etc/group

用户类型
root用户,UID=0
普通用户,UID=500-60000
伪用户,UID=1-499

伪用户与系统和程序服务相关,如bin,daemon,shutdown,halt等,以及mail,new,games,apache,ftp等。
伪用户通常不需要或无法登录系统;可以没有宿主目录

添加用户
useradd NEW_USERNAME
passwd NEW_USERNAME #set password

Linux进程管理
查看用户信息 w
JSCPU 以终端代号来区分,该终端所有相关的进程执行时,所消耗的CPU时间
PCPU CPU执行程序所耗费的时间
WHAT 用户正在执行的操作

查看个别用户信息 w USERNAME

查看系统中的进程 ps
a 显示所有用户的进程
u 显示用户名和启动时间
l 长格式显示

PID 进程号
PPID 父进程的进程号
TTY 进程启动的终端
STAT 进程当前的状态(S休眠状态,D不可中断的休眠状态,R运行状态,Z僵死状态,T停止)
NI 进程优先级

ex.
# ps 查看隶属于自己的进程
# ps -u or -l 查看隶属于自己进程详细信息
# ps -le or -aux 查看所有用户执行的进程的详细信息
# ps -aux --sort pid 可按进程执行的时间、PID、UID等对进程进行排序

kill 关闭进程
kill PID



Linux文件系统管理

常用文件系统文件夹说明:
/usr/bin 存放所有用户均可执行的命令
/usr/sbin 存放只有root用户能执行的命令
/usr 存放所有命令、库、手册
/etc 系统配置文件

磁盘信息查看
df 查看分区使用情况
du 查看文件、目录大小
fsck 检测修复文件系统
e2fsck

添加硬盘分区
fdisk 划分分区
mkfs 创建文件系统
mount 尝试挂载
/etc/fstab 写入配置文件

Shell编程

shell结构:
1. #!指定执行脚本的shell
2. #注释行
3. 命令和控制结构
创建shell程序的步骤:
第一步:创建一个包含命令和控制结构的文件。
第二步:修改这个文件的权限使它可以执行
使用chmod u+x
第三步:执行 ./example
(也可以使用“sh example”执行)

相关内容