Linux常用命令
一般的常用命令
cat 查看文件内容 (1.一次显示整个文件 2.从键盘创建一个文件 3.将几个文件合并为一个文件)
-n 或 --number:由 1 开始对所有输出的行数编号。
-b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行结束处显示 $。
-T 或 --show-tabs: 将 TAB 字符显示为 ^I。
-A, --show-all:等价于 -vET。
-e:等价于"-vE"选项;
-t:等价于"-vT"选项;
cd 打开 (cd命令后面加要打开的文件(/etc 绝对地址文件 etc 相对地址文件))
cd. 代表当前目录
cd.. 代表上一层目录
cd- 代表前一个工作目录
cd~ 代表【目前用户身份】所在的自家目录
cd~account 代表 account 这个用户的自家家目录
chown 改变属权 (这个指令只有是由系统管理者(root)所使用)
参数:
user : 新的文件拥有者的使用者 ID
group : 新的文件拥有者的使用者组(group)
-c : 显示更改的部分的信息
-f : 忽略错误信息
-h :修复符号链接
-v : 显示详细的处理信息
-R : 处理指定目录以及其子目录下的所有文件
--help : 显示辅助说明
--version : 显示版本
chmod 改变文件权限 文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以藉以控制文件如何被他人所调用。
参数:
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
-c : 若该文件权限确实已经更改,才显示其更改动作
-f : 若该文件权限无法被更改也不要显示错误讯息
-v : 显示权限变更的详细资料
-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
--help : 显示辅助说明
--version : 显示版本
clear 清空屏幕
cp 拷贝文件
参数:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r,-R:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。递归复制。
-l:不复制文件,只是生成链接文件
Ls 显示文件或目录信息
参数:
-a 显示所有文件,包含隐藏文件
-A 显示所有文件,包含隐藏文件,但不包含.及..
-l 显示为long format(长格式),列出文件的类型、权限、链接数、owner、group、大 小,时间,名字
-R 递归的列出所有子目录下的文件
-d 不展开目录,只显示目录自身,一般与-l配合使用以显示目录自身的属性信息(只显示当前目录的内容)
-1 数字1,成列显示内容
-S 以文件大小排序显示,默认从大到小 -r后,从小到大
-U 按存放顺序排序显示
-X 按扩展名的首字母来排序
-t 按mtime排序(先显示时间最近的)
-ul 按atime排序(先显示时间最近的)
-ct 按ctime排序(先显示时间最近的)
mkdir/rmdir 删除创建目录
参数:
-m mode=模式,设定权限(类似chmod)。
-p parents 递归创建目录。
-v verbose 每次创建目录都显示信息。
touch 命令 生成新的文件或更改现有文件时间 (1.文件不存在,系统会建立一个文件 2.默认情况下将文件的时间记录改为当前时间)
参数:
-a 只更改访问时间
-c, --no-create 不创建任何文件
-d, --date=字符串 使用指定字符串表示时间而非当前时间
-h, --no-dereference 会影响符号链接本身,而非符号链接所指示的目的地 (当系统支持更改符号链接的所有者时,此选项才有用)
-m 只更改修改时间
-t, 使用所给格式的时间而非当前时间
-r,使用指定文件属性而非当前时间
-help 显示此帮助信息并退出
-version 显示版本信息并退出
mv 命令 改名或移动文件
参数:
-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
-f: 在mv操作要覆盖某已有的目标文件时不给任何指示;
pwd 命令 显示当前所在的目录
rm 命令 删除文件或目录
参数:
-i 删除前逐一询问确认。
-f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。(一般不要用,因为没有后悔余地)
-r 将目录及以下之档案亦逐一删除。递归删除
which 命令 查找命令
参数:
-n<文件名长度> 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p<文件名长度> 与-n参数相同,但此处的<文件名长度>包括了文件的路径。
-w 指定输出时栏位的宽度。
-V 显示版本信息。
tar 命令 打包文件 (1.将多个文文件打包为一个文件 2.将文件打包并压缩 3.将打包的文件解包 4.将打包压缩的文件解压)
参数:
-A, --catenate 追加 tar 文件至归档
-c, --create 创建一个新归档
-r, --append 追加文件至归档结尾
-u, --update 仅追加比归档中副本更新的文件
-x, --extract, --get 从归档中解出文件
-t, --list 列出归档内容
-z, --gzip, --gunzip, --ungzip 通过 gzip 压缩归档
-j, --bzip2 通过 bzip2 压缩归档
-J, --xz 通过 xz 过滤归档
--lzip 通过 lzip 过滤归档
--lzma 通过 lzma 过滤归档
-Z, --compress, --uncompress 通过 compress 压缩归档
-v, --verbose 详细地列出处理的文件过程
-k, --keep-old-files 保留源文件不覆盖
-m, --touch 不要解压文件的修改时间
-W, --verify 在写入以后尝试校验归档
f, --file=ARCHIVE 使用归档文件或 ARCHIVE 设备,这个参数是最后一个,后面只接文件名
-b, --blocking-factor=BLOCKS 设置每个记录 BLOCKS x 512 字节
-C, --directory=DIR 改变至目录 DIR
--help 显示帮助信息
--version 显示版本信息
vi命令 打开编辑
vi命令的使用:
首先可以新建一个文件夹 touch 1.txt ,之后通过vi命令进入其中 vi 1.txt,进入其中开始编辑,按下a键可以进行输入。
非输入模式:按下h键,光标往前走
按下l键,光标往后走
按下j键,光标往下走
按下k键,光标往上走
按下a键,进入输入模式
按下o键,光标自动下移一行,进入输入模式
按下u键,撤销上一步操作(能一直撤销)
按下dd键,删除(剪切)光标所在整行。
按下5dd键,删除(剪切)从光标处开始的5行。(把5变成其他数字意思一样)
按下yy键,复制光标所在整行。
按下5yy键,复制从光标处开始的5行。(把5变成其他数字意思一样)
按下p键,将之前删除(dd)或复制(yy)过的数据粘贴到光标后。
按下/键+字符串,在文本中从上至下搜索该字符串。
按下?键+字符串,在文本中从下至上搜索该字符串 。
按下n键,显示搜索命令定位到的下一个字符串。
按下N键,显示搜索命令定位到的上一个字符串。
命令模式: 输入:w,保存
输入:q,退出
输入:q!,强制退出(放弃对文本的修改)
输入:wq!,强制保存退出
输入:set nu,显示行号
输入:set nonu,不显示行号
输入:命令,执行该命令
输入:整数,跳转到该行
mkdir命令 作用是建立名称为dirname的子目录,与MS DOS下的md命令类似,它的使用权限是所有用户。
参数:-m, --mode=模式:设定权限,与chmod类似。
-p, --parents:需要时创建上层目录;如果目录早已存在,则不当作错误。
-v, --verbose:每次创建新目录都显示信息。
--version:显示版本信息后离开
mount 挂载命令 umount 解挂命令
参数:
-t vsftype:指定要挂载的设备上的文件系统类型;
-r: readonly,只读挂载;
-w: read and write, 读写挂载;
-n: 不更新/etc/mtab;
-a:自动挂载所有支持自动挂载的设备;(定义在了/etc/fstab文件中,且挂载选项中有“自动挂载”功能)
-L 'LABEL': 以卷标指定挂载设备;
-U 'UUID': 以UUID指定要挂载的设备;
-B, --bind: 绑定目录到另一个目录上;
chgrp 改变文件或目录所属的组
umask 生成掩码
Who 查看都有谁登录到了系统中
echo echo是打印变量的值或者给定的字符串,也可以将字符串通过重定向到指定文件夹 例如:echo world >> a.txt
History 查看已经输入过的命令(有序号) !+编号执行对应序号命令 最多保存1000个命令
su 切换用户
sudo 将权限临时提升到最高
useradd 添加用户 userdel 删除用户 (只有高级用户可以删除)
whoami 告诉当前用户是谁
kill 杀死进程
exit 退出终端
usermod -ag 加入到组中
shutdown shutdown -h now 现在关机 -time 延时
wc 查看文件大小
id 显示当前用户id
帮助命令
Man 命令------手册帮助*****解释
查看时需要翻屏:
向后翻一屏:space(空格键) 向前翻一屏:b
向后翻一行:Enter(回车键) 向前翻一行:k
查看时需要查找:
/关键词 向后查找 n:下一个
?关键词 向前查找 N:前一个
辅助命令
Hostname 显示主机名
Ifconfig 显示ip
Ping 命令 连通两台计算机
参数:
-q 不显示任何传送封包的信息,只显示最后的结果
-n 只输出数值
-R 记录路由过程
-c count 总次数
-i 时间间隔
-t 存活数值:设置存活数值TTL的大小
ifdown +设备名 关掉该设备 ifup +设备名 开启该设备
yum autoremove tigervnc-server 卸载 yum相关服务 yum install tigervnc-server 下载yum相关服务
exit命令 用于退出目前的shell
netstat命令 用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
reboot 重启
Shutdown 改为桥接模式
Alt + f1~f12 控制切换不同交换机
防火墙命令
systemctl status firewalld
查看防火墙状态
systemctl stop firewalld 关闭防火墙
systemctl unable firewalld 自动关闭防火墙
systemctl disable firewalld.service 禁用防火墙
systemctl start firewalld 开启防火墙
systemctl enable firewalld 自动关闭防火墙
不常用命令
Uname -a 显示系统内核版本
Sar 这个命令也是查内核版本
Free 命令看占用率
crontab 命令 来设置设置周期性被执行的指令
比如:
创建、编辑计划任务:crontab -e [-u 用户名]
查看计划任务:crontab -l [-u 用户名]
删除计划任务:crontab -r [-u 用户名]
more 命令 查看文件
快捷键
space, z 向下翻页
b,ctrl+b 向上翻页
Enter 向下滚动 1 行
= 显示当前行号
v 用vi编辑器打开当前内容
:f 显示当前文档文件名与当前行号
d,ctrl+D 向下翻 K 行,默认k=11
q,Q 退出more
ctrl+L 类似于清屏
h 显示快捷键帮助
用法
more [选项] 文件..
命令选项
-d 显示帮助,而不是响铃
-f 统计逻辑行数而不是屏幕行数
-l 抑制换页(form feed)后的暂停
-p 不滚屏,清屏并显示文本
-c 不滚屏,显示文本并清理行尾
-u 抑制下划线
-s 将多个空行压缩为一行
-NUM 指定每屏显示的行数为 NUM
+NUM 从文件第 NUM 行开始显示
+/STRING 从匹配搜索字符串 STRING 的文件位置开始显示
-V 输出版本信息并退出
less 命令 查看文件
b <缓冲区大小> 设置缓冲区的大小
-e 当文件显示结束后,自动离开
-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-g 只标志最后搜索的关键词
-i 忽略搜索时的大小写
-m 显示类似more命令的百分比
-N 显示每行的行号
-o <文件名> 将less 输出的内容在指定文件中保存起来
-Q 不使用警告音
-s 显示连续空行为一行
-S 行过长时间将超出部分舍弃
-x <数字> 将"tab"键显示为规定的数字空格
/字符串:向下搜索"字符串"的功能
?字符串:向上搜索"字符串"的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
b 向后翻一页
d 向后翻半页
h 显示帮助界面
Q 退出less 命令
u 向前滚动半页
y 向前滚动一行
空格键 滚动一页
回车键 滚动一行
[pagedown]: 向下翻动一页
[pageup]: 向上翻动一页
grep 命令 grep命令用于在文件中搜索符号条件的字符串,如果需要模糊查询,则使用正则表达式进行匹配,正则表达式是包含匹配。
参数:
-E :开启扩展(Extend)的正则表达式。
-i :忽略大小写(ignore case)。
-v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。
-n :显示行号
-w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
-c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
-o :只显示被模式匹配到的字符串。
--color :将匹配到的内容以颜色高亮显示。
-A n:显示匹配到的字符串所在的行及其后n行,after
-B n:显示匹配到的字符串所在的行及其前n行,before
-C n:显示匹配到的字符串所在的行及其前后各n行,context
find 命令 在文件系统中查找匹配的文件
-L 如果遇到符号链接文件所指的文件
-regextype TYPE 指定-regex和-irgex类型,表达式类型,默认为ema
-depth/-d 查找目录自身之前(即深度优先)
-mount/-xdev 查找文件时不跨越文件
-maxdepth LEVELS 设置最大的查找深度
-help 显示find命令的帮助信息
-version 显示find的版本
条件表达式:
-name PATTERN 匹配文件名
-iname PATTERN 匹配文件名(忽略大小写)
-lname PATTERN 匹配符号链接文件名
-ilname PATTERN 匹配符号链接文件名(忽略大小写)
-wholename PATTERN 匹配文件的完整路径(不把‘/’和‘.’作为特殊字符)
-iwholename PATTERN 匹配文件的完整路径(忽略大小写)
-----------------------------------------
-newer FILE 查找所有比FILE的内容修改时间早的
-cnewer FILE 查找所有比FILE的状态修改时间早的(如修改权限)
-anewer FILE 找所有比FILE的访问修改时间新的
-----------------------------------------
-uid N 用户ID为N的所有文件
-gid N 组ID为N的所有文件
-uesr USERNAME 用户名为USERNAME 的所有文件
-group GROUPNAME 组名为GROUPNAME 的所有文件
-nouser 文件属于不在 /etc/passwd文件中的用户
-nogroup 文件属于不在 /etc/passwd文件中的组
-----------------------------------------
-perm MODE 精确匹配权限模式为MODE
-perm -MODE 匹配权限模式至少为MODE(用户,组,和其他人都匹配)
-perm /MODE或-perm +MODE 配权限模式至少为MODE(用户,组,和其他人一种匹配即可)
------------------------------------------
-type TYPE 查找类型为TYPE的文件
-links N 查找有N个链接的文件
-inum N 查找文件inode为N的文件
-samefile NAME 查找与NAME文件具有相同名字的文件
-size N[bcwkMG] 查找文件大小为N的文件
-empty 查找空文件
组合条件表达式:
(EXPR) 改变操作符优先次序
!EXPR 表示对表达式取反
EXPR1 EXPR2 与逻辑,若EXPR1为假,将不再评估EXPR2
EXPR1 -a EXPR2 与EXPR1 EXPR2功能一致
EXPR1 -o EXPR2 逻辑或,若EXPR1为真,将不再评估EXPR2
EXPR1,EXPR2 若EXPR1为假,继续评估EXPR2
动作表达式:
-print 在标准输出上列出查找结果
-ls 使用‘ls -dils’在标准输出列上列出查找到的东西
-prune 忽略对某个目录的查找
-exec COMMAND{}\; 对符合查找条件的文件执行linux命令
-ok COMMAND{}\; 对符合查找条件的文件执行linux命令,他会询问用户是否需要执行
chroot命令 用于改变根目录
fsisk 命令 查看磁盘,这是一个创建和维护分区的命令
参数:
a 设置可引导标记(活动分区/引导分区之间切换)
b 编辑BSD磁盘标签
c 设置DOS操作系统兼容标记(兼容/不兼容之间切换)
d 删除一个分区
l 显示已知的分区类型,其中82为Linux swap分区,83为Linux分区
m 显示帮助信息
n 增加一个新的分区
o 创建一个新的空白的DOS分区表
p 显示磁盘当前的分区表
q 退出fdisk程序,不保存任何修改
s 创建一个新的空白的Sun磁盘标签
t 改变一个分区的系统ID,就是改变分区类型(比如把Linux Swap分区改为Linux分区)
u 改变显示或输入单位
v 验证磁盘分区表
w 将分区表写入磁盘并退出(保存并退出)
x 额外功能(专家级)
mdadm 命令 它是Linux下的一款标准的软件 RAID 管理工具命令
选项:-C 执行创建
-D 查看RAID阵列的详细信息
-F 监控模式
-G 增长模式,用于增加磁盘,为阵列扩容
-A 装配模式,软RAID是基于系统的,当原系统损坏了,需要重新装配RAID
专用选项:
-l 级别
-n 设备个数
-a {yes|no} 自动为其创建设备文件
-c 指定数据块大小(chunk)
-x 指定空闲盘(热备磁盘)个数,空闲盘(热备磁盘)能在工作盘损坏后自动顶替
file 命令 用于辨识文件类型。通过file指令,我们得以辨识该文件的类型
参数:
-b 列出辨识结果时,不显示文件名称。
-c 详细显示指令执行过程,便于排错或分析程序执行的情形。
-f<名称文件> 指定名称文件,其内容有一个或多个文件名称时,让file依序辨识这些文件,格式为每列一个文件名称。
-L 直接显示符号连接所指向的文件的类别。
-m<魔法数字文件> 指定魔法数字文件。
-v 显示版本信息。
-z 尝试去解读压缩文件的内容。
stat 命令 查看文件或者文件系统的状态 ,可以查看时间等属性
ln 命令 创建文件链接
lvcreate 创建新的逻辑卷
vgcreate 用于创建LVM卷组
e2fsck 用于检查使用 Linux ext2 档案系统的 partition 是否正常工作。
resize2fs 调整ext2\ext3\ext4文件系统的大小,它可以放大或者缩小没有挂载的文件系统的大小。如果文件系统已经挂载,它可以扩大文件系统的大小,前提是内核支持在线调整大小。