1.Linux命令和参数必须用空格隔开,多少个空格无所谓。
2.Linux命令区分大小写
3.命令错误的三种情况
(1)command not found 命令没找到
(2)命令敲错了
(3)命令未安装
可以用type命令查看,例如查看ping是什么类型的命令:
type ping
主要分为:
alias
:表示是别名。keyword
:关键字,shell 保留字。function
:函数,shell 函数。builtin
:内置命令。file
:文件,外部命令。用来查看内置命令的帮助文档
例如查看内置命令cd的帮助文档:
help cd
用来查看外部命令的帮助文档
例如查看ping命令的帮助文档:
man ping
(3)百度大法
查找命令的文件位置,例如查找命令cd位置
查看命令的类型,例如查看cd的命令:
查看当前在线的用户
查看当前用户
查看当前所在文件位置
查看内核信息
清屏
回车后
查看历史命令
ls -a -l -h Linux路径
(1) 直接使用ls,不加选项和参数。
ls
将会以平铺形式,列出当前文件夹下的内容:
(2)加上参数
ls /
将会列出/目录下的内容。
-a选项
将会显示以.号开始的隐藏文件。不使用-a选项,这些文件会自动隐藏。
-l选项
将会以列表形式列出文件。还会展现出权限、用户和用户组等信息。
-h选项
以易于阅读的形式,列出文件大小。-h必须搭配-l使用。
cd Linux路径
cd命令会切换工作目录change directory到该Linux路径,如果没有参数,切换到当前用户的家目录。
另外,cd..可以回退到上一级目录,cd../..回退到上二级,……
pwd
无选项和参数。作用是print work directory打印当前所在的工作目录。
mkdir -p Linux路径
参数必填,-p选项可选,表示自动创建不存在的父目录,适用于创建多层级的目录。
创建文件夹需要权限,home目录外无法直接创建。
touch Linux路径
创建文件。
cat Linux路径
查看文件内容。内容将会直接全部显示出来。
more Linux路径
支持翻页查看文件内容。
使用空格翻页,按q退出查看。
cp -r 参数1 参数2
复制文件或者文件夹。
参数1,Linux路径,表示被复制的文件或文件夹
参数2,Linux路径,表示要被复制去的地方
-r选项可选,用于复制文件夹使用,表示递归
mv 参数1 参数2
参数1,Linux路径,表示被移动的文件或者文件夹
参数2,Linux路径,表示要移动的地方,如果目标不存在,则进行改名,确保目标存在。
rm -r-f 参数1 参数2 …… 参数N
删除文件或着文件夹。支持通配符*。
-r用于删除文件夹,-f强制删除,不会弹出消息提示。
普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示。
所以一般用户用不到-f选项。
参数1 参数2 …… 参数N表示要删除的文件或者文件夹路径。
which 命令名称
通过which命令,查看命令的程序文件放在那里。
find 起始路径 -name “被查找文件名”
从起始地址查找文件。支持通配符*。
另外注意,双引号是需要加的。
find 起始路径 -size +或者-n[kMG]
+和-表示大于或小于。n表示大小数字。
KMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB。
grep -n 关键字 文件路径
从文件中通过关键字过滤文件行。
选项-n可选,表示在结果中显示匹配的行的行号。
关键字必填,带有空格或其他特殊符号建议用“”将关键字括进去
文件路径必填,且可用于内容输入端,配合管道符使用。
wc -c -m -l -w 文件路径
统计文件的行数,单词数量等。
-l,统计行数
-w,统计单词数量
-c,统计bytes数量
-m,统计字符数量
直接写wc 文件路径会依次显示前三项。
echo 输出的内容
在命令行输出内容,内容如果复杂建议加“”;
另外,输出内容为用飘号``阔进去的命令可将命令的结果输出到命令行。
>将左侧命令的结果,覆盖写入到符号右侧指定的文件中将左侧命令的结果。
>追加写入到符号右侧指定的文件中。
例如:
echo abc > abc.txt
用abc将abc.txt原来的内容覆盖。
tail -f -num Linux路径
查看文件尾部内容,跟踪文件的最新更改。
-f表示持续跟踪
-num 查看尾部多少行(这个num是一个自己决定数字,而不是真的填num),不填数字的话,默认10行。
su - 参数
-表示是否在切换用户后加载环境变量。
参数表示要切换的用户名。
切换后可用exit命令退回原来的用户,或着按ctrl+d。
另外该参数或者也可以是其他的命令,表示为这一条命令赋予root权限。但不是所有用户都能使用这个命令,用户需要被配置sudo认证。配置方法:
下面是vi/vim文本编辑器的命令:
vi/vim Linux路径
如果文件路径表示的文件不存在,那么此命令会用于创建并编辑新文件。
如果文件路径表示的文件存在,那么此命令用于编辑已有文件。
快捷键:
gg 光标定位到文件开始位置
Shift+g 光标定位到文件结尾位置
dd 删除当前光标所在的一整行
dG 删除光标所在行到文本的结束
ndd 删除光标处开始的 n 行
yy 复制当前光标所在的一整行
yG 复制光标所在行到文本的结束
nyy 复制当前光标所在向下的n行
p 粘贴
u 撤回
ctrl+c 反撤回
三种模式:
命令模式(Command mode)
命令模式下,所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能。此模型下,不能自由进行文本编辑。
输入模式( Insert mode)
也就是所谓的编辑模式、插入模式。此模式下,可以对文件内容进行自由编辑。 此模式下,可以对文件内容进行自由编辑。
底线命令模式(Last line mode)
以:开始,通常用于文件的保存、退出。
Linux中关于权限的管控级别有2个级别,分别是:
1.针对用户的权限控制
2.针对用户组的权限控制
因此,针对某文件,可以控制用户的权限,也可以控制用户组的权限。因此Linux系统可以:
1.配置多个用户
2.配置多个用户组
3.用户可以加入用户组中
1.用户组管理
groupadd 用户组名
创建用户组
groupdel 用户组名
删除用户组
getent group
查看当前系统中有哪些组,另外会显示下面的信息。
2.用户管理
useradd -g-d 用户名
创建用户
-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g必须组已存在,同名组存在必须使用-g。
-d指定用户的HOME路径。不指定,默认在/home/用户名。
userdel -r 用户名
删除用户。
-r,删除用户的HOME目录。不指定-r,删除用户时,HOME目录保存。
id 用户名
查看用户所属组,如不提供用户名则查看当前用户所属组。
usermod -aG 用户组 用户名
修改用户所属组
getent password
查看当前系统中有哪些用户,且会显现用户的下列信息。
chmod -R 权限 文件或文件夹
修改文件或文件夹的权限。
-R表示对文件夹内的全部内容应用同样的操作。
只有文件或文件夹的所属用户或者root用户可以执行命令修改权限。
例如:
chown -R 用户 : 用户组 文件或文件夹
修改文件或文件夹的所属用户和用户组。
:用来分隔用户和用户组
-R表示对文件夹内的全部内容应用同样的操作。
普通用户无法修改为其他用户或组,所有此命令只能root用户执行。
yum:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题。
yum -y install或者remove或者search 软件名称
yum命令需要root权限,并且需要联网。
-y 自动确认,无需手动确认安装或者卸载过程。
intall 安装
remove 卸载
search 搜索
Linux系统很多软件均支持使用systemctl命令控制:启动、停止、开机自启。
能够被systemctl管理的软件,一般称之为服务。
systemctl start或者stop或者status或者enable或者disable 服务名
start 启动
stop 关闭
status 查看状态
enable 开启开机自启
disable 关闭开机自启
在系统中创建软链接,可以将文件、文件夹链接到其他位置。
类似Windows系统的快捷方式。
ln -s 参数1 参数2
-s选项,创建软链接
参数1:被链接的文件或文件夹
参数2:要链接去的目的地
通过date命令可以在命令行中查看系统的时间。
date -d +格式化字符串
格式化字符串中如果有空格,可加双引号。
+号是必要的。 格式化字符串如下:
-d 按照给定字符串显示日期,一般用于日期计算。
需要root权限。
rm -f /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
另外可以手动改变时间。
yum安装ntp,systemctl启动ntp,然后输入下面的命令:
ntpdate -u ntp.aliyun.com
查看ip地址。
如果不能使用,需要安装net-tools。
查看系统主机名。
可以修改主机名,但需要root权限。
hostnamestl set-hostname 主机名
检查指定的网络服务器是否是刻连通的状态。
ping -c num ip或主机名
-c 后面加一个数字,表示检查次数,不加表示无限次数持续检查。
wget是非交互式的文件下载器,可以在命令行内下载网络文件。
wget -b url
-b 可选,后台下载,会将日志写入到当前工作目录的wget-log文件。
不使用就是前台下载。无论下载完成不完成,都会存在一个文件。
在后台下载要查看下载情况,也可以用tail命令查看wget-log文件。
可以发送http网络请求,可用于下载文件、获取信息等。
curl -O url
-O 用于下载文件,当url是下载链接时,可以使用此选项保存文件。
查看端口的使用情况。需要yum安装nmap。
nmap 被查看的ip地址
查看指定端口的占用情况。需要yum安装net-tools。
netstat -anp|grep 端口号
无人使用则什么都不输出,否则显示使用的情况。
查看进程信息。通常配合管道符使用。
ps -e -f
-e 显示全部的进程
-f 以完全格式化的形式展现信息。
显示信息分别为:
通过kill命令关闭进程。
kill -9 进程ID
-9 表示强制关闭。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。
查看系统资源占用,类似Windows任务管理器。
默认每五秒刷新一次。q键或者ctrl+c退出。
前五行信息:
下面列的信息:
可以用来查看硬盘使用情况。
df -h
-h 以更加人性化的单位展示。
查看cpu,磁盘的相关信息。
iostat -x num1 num2
-x 显示更多信息。
num1刷新间隔
num2刷新次数
查看网络的相关统计
sar -n DEV num1 num2
-n查看网络
DEV表示查看网络接口
num1刷新间隔,不填查看一次结束
num2刷新次数,不填无限次数
用于查看环境变量环境变量
环境变量是操作系统(Windows、Linux、Mac)在运行的时候,记录的一些关键性信息,用以辅助系统运行。
环境变量是一种KeyValue型结构,即名称和值,也就是这样的形式:“名称=值”。
其中有个名称为PATH,其记录了系统执行任何命令的搜索路径,这也是为什么命令在任一目录下都能完成的原因。
可以使用echo $PATH输出PATH的值。另外echo ${PATH}ABC会输出PATH的值再加ABC。
临时设置环境变量。
export 变量名=变量值
永久生效:
(1)针对当前用户生效
配置在当前用户的~/bashrc文件,添加上面临时设置的语句。并通过source配置文件,进行立刻生效,或重新登录第三方远程连接软件生效。
(2)针对所有用户生效
配置在系统的/etc/profile文件中,添加上面临时设置的语句。并通过source配置文件,进行立刻生效,或重新登录第三方远程连接软件生效。
需要yum下载lszrz
rz
上传文件,Linux路径也就是要上传的文件。
需要yum下载lszrz
sz Linux路径
下载文件
.tar,称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,并没有太多文件体积的减少,仅仅是简单的封装。
.gz,也常见为.tar.gz,gzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大的减少压缩后的体积。
tar命令均可以对这两种为后缀的文件进行压缩解压的操作。
tar -c -v -x -f -z -C 参数1 参数2 …… 参数N
-c,创建压缩文件,用于压缩模式。
-v,显示压缩,解压过程,用于查看进度。
-x,解压模式
-f,要创建的文件,或要解压的文件,-f选项必须在所有选项中位置处于最后一个
-z,gzip模式,不使用-z就是普通的tarball格式。
-C,选择解压的目的地,用于解压模式。
常用的组合:
zip压缩:
tar -cvf file.tar file1.txt file2.txt……
tar -zcvf file.tar file1.txt file2.txt……
file.tar是将后面txt文件压缩后的文件名。
tar解压:
tar -xvf file.tar
tar -xvf file.tar -C Linux路径
tar -zxvf file.tar -C Linux路径
压缩文件为zip压缩包
zip -r 参数1 参数2……
-r,被压缩的包括文件夹的时候,需要-r选项,和rm,cp等命令的-r效果一致。
62.unzip
解压zip压缩包
unzip -d 参数
-d 指定要解压去的位置,同tar的-C选项
参数是被解压的zip压缩包文件。