、ls
文件属性:
-:普通文件
d:目录文件
b:块设备
c:字符设备文件
l:符号连接文件
p:命令管道
s:套接字文件
文件权限:
9位数字,每3位一组
文件硬链接次数
文件所属主(owner)
文件的属组(group)
文件大小(size),单位默认是字节
ls常用选项:
-l:显示文件属性,ls -l=ll
-h:做相应的单位转换显示
-a:显示所有文件
-A:显示.和…以为的所有文件
-d:显示目录自身属性
-i:显示文件的缩影接点号码(index node ,inode)
-r:逆序显示文件列表
-R:递归显示文件
2、cd
cd:change directory
cd:回到用户的家目录
cd ~username:进入指定用户的家目录
cd - :在当前目录和前一次所在的目录来回切换
cd …:切换至其父目录
3、printenv:显示当前环境变量信息
4、时间管理
date:显示系统时间
clock:显示硬件时间
hwclock -W:把系统时间同步到硬件时间
hwclock -s:把硬件时间同步到系统时间
cal:显示日历
5、命令帮助
关键字查找
/KEYWORD:向后查找关键字
?KEYWORK:向前查找关键字
n:下一个关键字位置
N:前一个关键字
q:退出man帮助
6、file
file:用于查看普通文件和系统文件的类型
7、mkdir
mkdir:创建目录
rmdir:删除目录
-p:递归创建
-V:显示创建信息
8、rm
rm:删除文件
-i:交互式删除
-f:暴力删除
-r:递归删除
命令可以组合利用
9、touch
touch:创建文件
-c:文件存在的时候不在创建
-a:只改变文件的访问时间
-m:只改变文件的修改时间
-t:自己设定文件的时间戳(年月日时分.秒),与a、m配合使用
10、cp
-r:递归复制目录
-i:交互式显示复制
-f:强制复制,覆盖
-p:保留源文件的属性,时间戳
-a:保留源文件的所有属性
-P:复制链接文件时保存为链接(默认是复制链接所指向的文件)
-d:复制时保持链接
-a:归档复制,常用与备份
11、mv
mv:移动或重命名文件
mv SRC(源) DEST(目标)
在统一目录下可以利用mv进行重命名: mv abc bcd 或者 mv -t 目标 源
12、cat
cat:连接并显示文件的信息,是全部显示文件内的信息
-n:在显示的时候可以显示行号,这个行号只是显示出来,跟文件内容没有 关系
-E:显示每一行的行结束符,所以linux中文本文件的行结束符是$符
-T:可以显示制表符
-v:显示其他的非打印字符
-A:显示所有的符号
13、more
more:more的作用同cat是相同的,只不过这时我们可以通过手动来翻屏,更加方便
,more:只支持向后翻,翻到最后
就直接退出了
less:显示文件信息,默认不退出显示,q即可退出
空格:向后翻一屏
b:向前翻一屏
ENTER:向后翻一行
k:向前翻一行
关键字查找
/KEYWORD:查找关键字
14、head、tail
head:显示文件的前几行,默认是10行
-NUM:显示前多少行
tail
tail:显示文件的后几行,默认是10行
-NUM:显示后多少行
-f:查看文件尾部,而且不退出,等待显示后续追加的新内容;
15、cut
cut:用于剪切数据的内容
-d:指定字段分隔符,默认的是空格 cut -d: -f7 空格符 cut -d’’
-f:指定要剪切显示的字段
-f 1 表示显示第一个字段 cut -f1
-f 1,3表示显示第一个和第3个字段
-f 1-3表示显示从1到3的字段
16、sort 、uniq、wc
wc:文本统计,可以统计文件中一共有多少行数,多少个单词数,多少个字节数 -l:只显示行数 -w:只显示单词数 -c:只显示字节数 -L:显示最长的一行包含多少个字符
17、tr
tr:转换或删除字符
tr [OPTION]…SET1 [SET2]
例如# tr ab AB 把小写ab都换位大写AB
-d:可以实现删除出现在字符集中的所有字符
30、chmod
chmod:修改文件的用户权限
chmod MODE file…
-R:递归修改
–reference=/path/to/somefile file…
chmod 755 file…
修改某类用户的某些权限
u:属主
g:属组
o:其他
a:所有
chmod 用户类别=MODE fiel…
chmod u=wr,g=w /fiel…
chmod uo=wr /file…
修改某类的用户某位或某些位权限
chmod 用户类别[-/+]MODE fiel…
31、echo
echo:输出信息
echo “abc”
echo “字符串” | passwd --stdin USERNAME:利用管道修改用户密码
32、输入、输出重定向
33、grep
sed -r ‘s/^#[[:space:]]+//g’ /etc/inittab
6、删除某文件中以空白字符后面跟#类的行中的开头的空白字符及#
sed -r ‘s/+#//’ 1
7、取出一个文件路径的父目录名称;
echo “/etc/rc.d” | sed -r ‘s@(/.*/)[/]+/?@1@g’
以/.*/开头,[^]指非斜杠,1引用左边第一个括号内的内容一次。
echo “/etc/rc.d” | sed -r ‘s@/.*/([/]+)/?@1@g’
vim高级话题
1、显示或取消显示行号
:set nu
:set nonu
2、设定忽略或区分大小写
:set ignorecase
:set ic 忽略
:set noic
3、设定自动缩进
:set autoindent
:set ai 缩进
:set noai
4、查找到的文本高亮显示或取消高亮显示
:set hlsearch 高亮显示
:set nohlserch 取消
5、语法高亮
:syntax on 开启
:syntax off 关闭
36、let
let:相当于一个小的计算器
let SUM+=$I ;sum等于sum+I
let I+=1:让I等于I加1
let I++:让I等于I加1
let I-=相当于let I–:I等于I减1
37、locate
locate:查找文件,非实时的、模糊匹配,全系统文件数据库的查找命令
updatedb:手动生成文件数据库,新安装的系统没有数据库的,速度快
38、find
时间戳查找
单位为天
-mtime :修改时间
-atime :访问时间
-ctime:改变时间
支持[+|-]#:
5:五天那一天访问
-5:五天之内
+5:至少五 天之外
单位为分钟
-amin:访问时间
-cmin:修改时间
-tmin:改变时间
文件的权限查找
-perm mode(755):精确查找
fg:find 路径 -pern 755
-perm /mode : 三位匹配一位就可以
-perm -mode:文件权限能完全包含此mode才可以显示
执行动作:
-print:默认的,显示
-ls:类似ls -l的形式显示匹配到的每个文件的详细信息
-ok COMMAND {} ;每个操作需要用户确认 执行命令,必须以;结尾。
{}代表匹配到的文件。
-exec COMMAND {} ;不需要确认,执行命令,必须以;结尾。{}代表
匹配到的文件。
=========================================================================================
39、SUID
40、sticky
sticky:规定在一个公共目录,每个人都可以创建文件、删除自己的文件,但不
能删除别人的文件。
chmod o+t DIR:对目录增加sticky权限
chmod o-t DIR:去掉目录的sticky权限
chmod 1755 /backup/test 表示文件具有sticky权限
41、facl
facl:利用文件扩展保持额外的访问权限
setfacl:设置某文件的控制权限
-m:增加facl
u:设定用户的时候,后面加上u:UID:perm
fg:setfact -m u:UID:rw file
g:设置组
-x:取消facl
getfacl:查看文件的facl权限
42、whoami
whoami:显示当前用户是谁,su半切换的时候显示的是切换之前的那个用户
43、who
who:查看当前登录系统的用户以及他所登录的终端
-r:显示当前运行级别
-H:第一回列表显示各列名称
w:显示比who更详细的信息
44、last
last:显示当前系统上的登录日志(/var/log/wtmp文件),包括系统用户和
重启信息
last -n 数字:只显示最近几次的登录信息
45、lastb
lastb:显示用户错误的登录常识
lastb -n 数字:只显示最近几次错误的登录信息。
46、lastlog
lastlog:显示每个用户最近一次成功登录的信息
lastlog -u USERNAME:显示指定用户最近一次的登录信息
47、basename
==========================================================================================
48、mail
mail:邮件查看,可以查看邮件,查看以后就会放到用户的家目录内mbox文件夹内。
-s主题
mail -s "How are you " root
cat /etc/fast | mail -s "How are you " root
49、hostname
hostname:显示当前主机的名称
hostname 主机名:更改主机名
fg:如当前主机的名字为空,或者(none)或者为(localhost),就将其
改为www
[ -z -o == “(null)” -o
== “localhost” ] && host www.
-z:表示是否为空
50、RANDOM
52、du
53、df
55、partprobe:把新的分区同步到内核上去。
56、mkfs
mmkfs:创建文件系统
mkfs -t FSTYPE 指定分区
-t可以实现多种系统的格式化 如mkfs -t ext2 /dev/sda5
57、mke2fs
mke2fs:专门管理ext系列的文件的命令,不跟任何参数,指的是创建ext2
-j:指的是创建ext3类型文件系统
-b BLOCK_SIZE:指定块大小,默认为4096;可用取值为1024,2048或
4096
-L LABEL: 指定分区卷标;例如 mke2fs -L MYYY /etc/sda5
-m #:明确指定预留给超级管理员用的快熟百分比 mke2fs -m 3
/dev/sda5
数值应该为块大小的2^n被 mke2fs -i 4096 表示4096个字节创建一个inode
-F:强行创建文件系统;
-E:用于指定额外的文件系统属性;
-N#:指定inode个数;
58、blkid
blikd:查询或查看块设备的属性,其中有包含文件系统的信息
59、e2lable
e2lable:专门用于查看或定义卷标
查看卷标 e2label /dev/sda5
设定卷标 e2label 设备文件 卷标 :即实现设定卷标 e2label
/dev/sad6 YYY
(这里的设备文件即/dev/sda5)
LVM扩展:先扩展物理卷边界,再扩展逻辑卷
lvextend -L [+]# /PATH/TO/LV :扩展物理边界
resize2fs:扩展逻辑边界
resize2fs /PATH/TO/LV 5G:扩展逻辑边界到5G
resize2fs -p /PATH/TO/LV:有多大扩展到多大
mount -a:挂载/etc/fstab文件内的所有设备
89、源码程序安装命令
tar xf …:解压源码包
https://blog.csdn.net/qq_45561464/article/details/configure;配置
make:编译
make install:安装
90、netstat
netstat:查看系统信息
-r:显示路由信息
-rn:以数字的方式显示
-t:显示tcp链接
-u:显示udp链接
-l:显示端口监听状态
-p:显示监听指定套接字的进行的进程号及进程名
-tunlp:常用组合,数字显示tcp、udp的链接情况
91、ps
ps:查看进程信息
BSD风格常用选项:
a:显示所有与终端有关的进程 ?:表示与终端无关
x:显示所有与终端无关的进程
u:显示进行信息
aux:组合使用
SysV风格常用选项:
-elF:查看所有进行信息(e:所有进程)
-elf:没F详细
-o PROPERTY:指定属性显示
ps -aux | grep bmgctl
ps aux | grep bmgctl
ps -ef | grep bmgctl (推荐使用)
92、pstree
pstree:以树的形式显示ps信息。
93、pgrep:以grep的风格查看符合某种特性的进程
94、top
top:动态显示进程信息
支持交互,交互命令
M:根据驻留内存大小进行排序
P:根据CPU使用百分比进行排序
T:根据累计时间进行排序
l:是否显示平均负载和启动时间
t:是否显示进行和CPU状态相关信息
m:是否显示内存相关信息
c:是否显示完整的命令行信息
q:退出top
k:终止某个进程
常用选项:
-d 1 :几秒刷新一次
-b:批模式显示
-n #:在批模式下,共显示多少批
95、前台和后台作业
前台作业:占据了命令提示符
后台作业:启动之后,释放了命令提示符,后续的操作在后台完成
前台–>后台:
ctrl+z键:正在前台的作业送到后台
bg:让后台停止的作业继续运行
bg [%JOBID]:%可以省
fg:将前台的作业送到后台
fg [%JOBID]:%可以省
96、jobs
jobs:查看后天的所有作业
97、chkconfig
chkconfig:查看服务启动项
–list:查看所有独立服务的启动设定
–list SERVICE_NAME:某个服务的启动设定
chkconfig --add SERVICE_NAME(脚本名称):增加S链接和K链接
chkconfig --del SERVICE_NAME(脚本名称):删除S链接和K链接
chkconfig --level 24 服务名 off|on:指定在级别24内为on或off。
98、mktemp
mktemp:创建临时文件
mktemp /tmp/file.XX(XX代表系统自动生成的文件)生成临时文件
mktemp -d /tmp/file.xx :生成临时目录
99、kill
kill -SIGNAL PID
常用SIGNAL:1:hup 2:INT 9:KILL 15:TERM ctrl+c:是信号2,结束
100、trap命令:可以实现捕捉信号
trap ‘COMMAND’ 信号列表
fg:trap ‘echo “you cannot kill me”’ INT
101、at
at:指定在未来的某个时间点执行一次某任务
时间格式
绝对时间:HH:MM DD::MM:YY MM/DD/YY
相对时间:now+#(minutes,hours,days,weeks)
模糊时间:noon,midnight,teatime
at -l:显示自己的作业列表
at -d 作业号:删除作业
102、batch
batch:和at用法相似,只是执行是在系统空闲的时候执行计划任务。
103、cron
cron:不间断允许的服务
系统cron定义格式:
分钟 小时 天 月 周 用户 任务
用户cron任务定义格式
定义文件/var/spool/cron/USERNAME
格式:分钟 小时 天 月 周 任务
104、ssh
ssh:远程连接命令
ssh 172…:直接以当前客户端上登陆的用户登陆远程主机
ssh USERNAME@172…:以某个用户登陆
ssh -l USERNAME 172…:以某个用户登陆
ssh USERNAME@HOST:以某个用户不登陆远程主机执行COMMAND命令
105、scp
scp:远程复制文件的命令
scp SRC DEST:复制文件(与cp命令用法相似)
-r
-a
fg: scp USERNAME@HOST:/PATH/TO/SOMEFILE /path/to/local
scp /path/to/local USERNAME@HOST:/PATH/TO/SOMEFILE
106、dig
dig:测试域解析的命令
-t NS . :获取DNS根域信息
-t NS chris.com @IP:直接去某个IP查找DNS服务器。
-t A chris.com:查看域的A记录
-t CNAME:查看别名记录
-X IP:根据IP查找主机名,反向解析信息