Linux 命令语法:
命令格式: 命令 【-选项】【参数】 例子: ls -la /etc 说明: ①、个别命令使用不遵循此格式 ②、当有多个选项时,可以写在一起 ③、简化选项(一般用一个-)与完整选项(一般用两个--) 比如 ls -a 等于 ls --all
目录处理命令
1、目录处理命令:ls ①、命令名称:ls ②、英文原意:list ③、命令所在路径:/bin/ls ④、执行权限:所有用户 ⑤、功能描述:显示目录文件 ⑥、语法: ls 选项【-ald】【文件或目录】
-a 显示所有文件,包括隐藏文件
-l 详细信息显示
-d 仅显示目录名,而不显示目录下的内容列表
-h 人性化显示(hommization)
-i 查看任意一个文件的i节点(类似于身份证唯一信息)
-t:用文件和目录的更改时间排序;可以用第一个显示的文件判断最近修改的文件
注意:. 开头的文件除非是目录,否则就是隐藏文件
以 -rw-------. 1 root root 1.3k Mar 11 08:05 anaconda-ks.cfg 为例解析如下:
-rw------- 第一位表示文件类型,- 表示是二进制文件,d 表示目录, l 表示软连接文件。后面的每三个为一组
rw- --- ---
u g o
u所有者 g所属组 o 其他人
r 读 w写 x执行 -无权限
1 引用计数,表示文件被引用过多少次
第一个root 表示所有者
第二个root 表示所属组
1.3k 表示文件字节大小,不带单位表示字节
Mar 11 08:05 表示文件的最后修改时间。注意:Linux没有明确的创建时间,只有最后一次访问时间、文件的状态修改时间、文件的数据修改时间
anaconda-ks.cfg 表示文件名
2、目录处理命令:mkdir ①、命令名称:mkdir ②、英文原意:make directories ③、命令所在路径:/bin/mkdir ④、执行权限:所有用户 ⑤、功能描述:创建新目录 ⑥、语法:mkdir 【-p】 【目录名】
-p 递归创建
例子:mkdir /tmp/vae.txt 注意:1、创建的目录已经存在, 那么 Linux 会提示我们 Linux 无法创建它。
2、不带任何参数运行 mkdir 命令会在当前目录下创建目录。
3、不带上-p,如果新建的文件上级目录不存在则不会执行成功。
4、创建目录的首要条件是, 在想要创建目录的目标路径下你必须具有访问权限。
3、目录处理命令:cd ①、命令名称:cd ②、英文原意:change directory ③、命令所在路径:shell 内置命令 ④、执行权限:所有用户 ⑤、功能描述: 切换目录 ⑥、语法:cd 【目录】 范例:$cd /tmp/vae 切换到指定目录
cd .. 回到上一级目录
cd . 还是在当前目录
cd ../.. 返回上两级目录
cd - 返回进入此目录之前所在的目录
4、目录处理命令:pwd ①、命令名称:pwd ②、英文原意:print working directory ③、命令所在路径:/bin/pwd ④、执行权限:所有用户 ⑤、功能描述:显示当前目录 ⑥、语法:pwd
范例:$ pwd
5、目录处理命令:rmdir ①、命令名称:rmdir ②、英文原意:remove empty directories ③、命令所在路径:/bin/rmdir ④、执行权限:所有用户 ⑤、功能描述:删除空目录(如果里面有文件是删除不了的) ⑥、语法:rmdir [目录名] 范例:$ rmdir /tmp/vae
6、目录处理命令:cp ①、命令名称:cp ②、英文原意:copy ③、命令所在路径:/bin/cp ④、执行权限:所有用户 ⑤、功能描述:复制文件或目录 ⑥、语法:cp -rp 【原文件或目录】【目标目录】
cp -r 复制目录
cp -p 保留文件属性
比如我们将 root 目录下的install.log 文件复制到 tmp 目录下
可以用于复制后文件改名,比如我们将 root 目录下的 install.log 文件复制到 tmp的copyinstall.log 文件
7、目录处理命令:mv ①、命令名称:mv ②、英文原意:move ③、命令所在路径:/bin/mv ④、执行权限:所有用户 ⑤、功能描述:剪切文件、改名 ⑥、语法:mv【原文件或目录】【目标目录】
我们在 tmp 目录下创建目录 tmp1 ,然后在 tmp1 目录下创建目录 tmp1_1,然后 命令 mv /tmp/tmp1/tmp1_1 /tmp 将 tmp1目录下的 tmp1_1 剪切到 tmp 目录下。
8、目录处理命令:rm ①、命令名称:rm ②、英文原意:remove ③、命令所在路径:/bin/rm ④、执行权限:所有用户 ⑤、功能描述:删除文件 ⑥、语法:rm -rf 【文件或目录】
-r 删除目录
-f 强制执行
在 tmp 目录下有两个目录 tmp1 和 tmp1_1,rm -r tmp1_1 是删除这个目录,但是需要输入 y 来确认
rm -rf tmp1 是强制删除 tmp1 目录,不需要输入 y 来确认,这种做法很简单,但是容易误删文件,没有反悔的机会
rm -rf tmp1 tmp2 同时删除两个文件
文件处理命令
1、文件处理命令:touch ①、命令名称:touch ②、英文原意: ③、命令所在路径:/bin/touch ④、执行权限:所有用户 ⑤、功能描述:创建空文件 ⑥、语法:touch 【文件名】
我们在 tmp 目录下创建 tmp.log 文件
注意:创建文件时,文件名不要有空格,不然就是创建了 两个文件
touch progrom files 这是创建了两个文件,progrom 和 files
如果我们想创建一个文件名为 progrom files ,应该用引号括起来(尽量避免文件名包含空格)
touch "progrom files"
2、文件处理命令:cat ①、命令名称:cat ②、英文原意: ③、命令所在路径:/bin/cat ④、执行权限:所有用户 ⑤、功能描述:显示文件内容(只能用于显示文件内容较少的文件)
-n 显示行号 ⑥、语法:cat【文件名】
3、文件处理命令:tac ①、命令名称:tac ②、英文原意: ③、命令所在路径:/bin/tac ④、执行权限:所有用户 ⑤、功能描述:显示文件内容(反向显示,与 tac 命令相反)
⑥、语法:tac【文件名】
4、文件处理命令:more(与 less 命令相反,但是不能往回翻页)
①、命令名称:more
②、英文原意:
③、命令所在路径:/bin/more
④、执行权限:所有用户
⑤、功能描述:分页显示文件内容
⑥、语法:more【文件名】
(空格)或f 翻页(一页一页的往后显示)
(Enter) 换行(一行一行的往后显示)
q 或 Q 退出
查看 etc目录下的 services 文件信息:more /etc/services
5、文件处理命令:less(比 more 命令好用,可以往回显示)
①、命令名称:less
②、英文原意:
③、命令所在路径:/usr/bin/less
④、执行权限:所有用户
⑤、功能描述:分页显示文件内容(可向上翻页)
⑥、语法:less【文件名】
6、文件处理命令:head(与 tail 命令相反)
①、命令名称:head
②、英文原意:
③、命令所在路径:/usr/bin/head
④、执行权限:所有用户
⑤、功能描述:显示文件的前面几行
-n 指定行数
⑥、语法:head【文件名】
不用 -n 默认显示前 20 行数据
显示 etc目录下的 services 文件前面 20 行
head -n 20 /etc/services
7、文件处理命令:tail(与head 命令相反)
①、命令名称:tail
②、英文原意:
③、命令所在路径:/usr/bin/tail
④、执行权限:所有用户
⑤、功能描述:显示文件的后面面几行
-n 指定行数
-f 动态显示文件末尾内容(即文件实时变化,那么显示内容也会随之变化)
⑥、语法:tail【文件名】
tail -n 18 /etc/services
链接命令
1、文件处理命令:ln
①、命令名称:ln
②、英文原意:link
③、命令所在路径:/bin/ln
④、执行权限:所有用户
⑤、功能描述:生成链接文件
⑥、语法:ln -s 【源文件】【目标文件】
-s 创建软链接
不加 -s 创建硬链接
创建文件 /etc/issue 的软链接 /tmp/issue.soft
ln -s /etc/issue /tmp/issue.soft
创建文件 /etc/issue 的硬链接 /tmp/issue.hard
ln /etc/issue /tmp/issue.hard
我们可以看到
第一:软链接 前面是 l 开头的(link),而硬链接是 - 开头,表示文件
第二:软链接所有者和所属组具有全部操作的权限,rwxrwxrwx;而硬链接不是。也就是软链接的前面都是 lrwxrwxrwx
第三:软链接类似与 windows 的快捷方式,有一个明显的箭头指向,而指向的是源文件
第四:硬链接文件除了文件名与源文件不一样,其余所有信息都是一样的。类似于 cp 复制操作。但是又和复制不一样,硬链接可以同步更新。
第五:通过 ls -i 操作,来查看 文件的 i 节点。发现硬链接和源文件的 i 节点是相同的,而软链接与源文件的 i 节点是不同的
第六:不允许将硬链接指向目录;不允许跨分区创建硬链接
权限管理命令
1、权限管理命令:chmod
①、命令名称:chmod
②、英文原意:change the permissions mode of a file
③、命令所在路径:/bin/chmod
④、执行权限:所有用户
⑤、功能描述:改变文件或目录权限
⑥、语法:chmod 【{ugoa}{+-=}{rwx}】【文件或目录】
【mode=421】【文件或目录】
-R 递归修改
能改变文件或目录权限的用户:
第一个是 所有者
第二个是 root
u:表示所有者
g:表示所属组
o:表示其他人
a:表示所有人
权限用数字表示:
r 4
w 2
x 1
那么我们可以这样:具有 rwx 权限的数字就是 7,具有 rw- 权限的数字是 6,具有 r-- 权限的数字是 4
范例1:我们赋予 tmp 目录下的 tmp.log 所有者 x 的权限;赋予 所属组 w 权限,其他人 w 权限
chmod u+x /tmp/tmp.log
chmod g+w,o+w /tmp/tmp.log
将上面例子改为用 数字来操作
我们给 tmp.log 赋予 640 的权限,即 rw-r-----
递归赋予权限
给 tmp 目录下的a目录所有文件和目录赋予 776 的权限
chmod -R 776 /tmp/a
2、权限管理命令:chown
①、命令名称:chown
②、英文原意:change file ownership
③、命令所在路径:/bin/chown
④、执行权限:所有用户
⑤、功能描述:改变文件或目录的所有者
⑥、语法:chmod 【用户】【文件或目录】
能更改文件或目录的所有者用户是 root
改变 tmp.log 文件的所有者为 vae
chmod vae /tmp/tmp.log
3、权限管理命令:chgrp
①、命令名称:chgrp
②、英文原意:change file grop ownership
③、命令所在路径:/bin/chgrp
④、执行权限:所有用户
⑤、功能描述:改变文件或目录的所属组
⑥、语法:chgrp【用户组】【文件或目录】
能更改文件或目录的所属组用户是 root
文件搜索命令
1、文件搜索命令:find
①、命令名称:find
②、英文原意:
③、命令所在路径:/bin/find
④、执行权限:所有用户
⑤、功能描述:文件搜索
⑥、语法:find【搜索范围】【匹配条件】
注意:搜索条件越精准消耗系统资源越少;不要在服务器使用高峰期进行文件搜索
一、根据 文件或目录名 搜索
find /etc -name init (精准搜索,名字必须为 init 才能搜索的到)
find /etc -name *init (模糊搜索,以 init 结尾的文件或目录名)
find /etc -name init??? (模糊搜索,? 表示单个字符,即搜索到 init___)
二、根据文件数据块大小
在根目录下查找大于 100 MB的文件
find / -size +204800
+n 表示大于,-n 表示小于,n 表示等于
1 数据块 == 512 字节 ==0.5k
100MB == 102400KB==204800
三、根据所属组和所有者名称来查询
在home目录下查询所属组为 root 的文件
find /home -group root
在home目录下查询所有者为 root 的文件
find /home -user root
2、文件搜索命令:locate
①、命令名称:locate
②、英文原意:
③、命令所在路径:/usr/bin/locate
④、执行权限:所有用户
⑤、功能描述:在文件资料库中查找文件
⑥、语法:locate 【文件名】
-i 不区分大小写
注意:这里和 find 命令是有区别的,find是全盘检索,而locate 是在文件资料库中进行搜索。所以新创建的文件如果不更新 文件资料库,使用 locate 是查找不到得。
第二点:如果在 temp 目录下创建文件,使用 locate 也是查找不到的。因为 tmp 目录不在文件资料库的范围内
updatedb 更新资料库
locate -i locateTest 不区分大小写
3、文件搜索命令:which
①、命令名称:which
②、英文原意:
③、命令所在路径:/usr/bin/which
④、执行权限:所有用户
⑤、功能描述:搜索命令所在的目录以及别名信息
⑥、语法:which 【命令】
查询 ls 命令所在目录
which ls
4、文件搜索命令:whereis
①、命令名称:whereis
②、英文原意:
③、命令所在路径:/usr/bin/whereis
④、执行权限:所有用户
⑤、功能描述:搜索命令所在的目录以及帮助文档路径
⑥、语法:whereis【命令名称】
查询 ls 命令所在目录以及帮助文档路径
5、文件搜索命令:grep
①、命令名称:grep
②、英文原意:
③、命令所在路径:/bin/grep
④、执行权限:所有用户
⑤、功能描述:在文件中搜寻字符串匹配的行并输出
⑥、语法:grep -iv 【指定字符串】【文件】
-i 不区分大小写
-v 排除指定字符串
范例:查找 /root/install.log 文件中包含 mysql 字符串的行,并输出
grep mysql /root/install.log
帮助命令
1、帮助命令:man ①、命令名称:man ②、英文原意:manual ③、命令所在路径:/usr/bin/man ④、执行权限:所有用户 ⑤、功能描述:获得帮助信息 ⑥、语法:man 【命令或配置文件】
范例:man ls
查看 ls 命令的帮助信息
man services
查看配置文件的 services 的帮助信息,注意直接跟配置文件名就好,不能是 man /etc/services
输入 /-d 可以查看与 ls -d 相关的,输入 /-l 可以查看与 ls -l 相关命令详解
2、帮助命令:help ①、命令名称:help ②、英文原意: ③、命令所在路径:shell 内置命令 ④、执行权限:所有用户 ⑤、功能描述:获得shell内置命令的帮助信息 ⑥、语法:help 【命令】
注意:shell 内置命令即找不到 命令所在路径的
比如 cd 命令
用户管理命令
1、用户管理命令:useradd ①、命令名称:useradd ②、英文原意: ③、命令所在路径:/usr/sbin/useradd ④、执行权限:root ⑤、功能描述:添加新用户 ⑥、语法:useradd【用户名】
2、用户管理命令:passwd ①、命令名称:passwd ②、英文原意: ③、命令所在路径:/usr/bin/passwd ④、执行权限:所有用户 ⑤、功能描述:设置用户密码 ⑥、语法:passwd【用户名】
注意:普通用户只能修改自己的密码,而且密码要符合密码规则,不然修改不了
3、用户管理命令:who ①、命令名称:who ②、英文原意: ③、命令所在路径:/usr/bin/who ④、执行权限:所有用户 ⑤、功能描述:查看登录用户信息 ⑥、语法:who
第一个表示登录用户
第二个 tty1 表示本地终端登录,pts表示远程终端
第三个表示 登录时间
最后面的是 远程登录 IP地址
4、用户管理命令:w ①、命令名称:w ②、英文原意: ③、命令所在路径:/usr/bin/w ④、执行权限:所有用户 ⑤、功能描述:查看登录用户的详细信息 ⑥、语法:w
压缩解压命令
1、压缩解压命令:gzip ①、命令名称:gzip ②、英文原意:GNU zip ③、命令所在路径:/bin/gzip ④、执行权限:所有用户 ⑤、功能描述:压缩文件 ⑥、语法:gzip 【文件】
注意:只能压缩文件,不能压缩目录;压缩完后不保留原文件
压缩后文件格式为: .gz
2、压缩解压命令:gunzip ①、命令名称:gunzip ②、英文原意:GNU unzip ③、命令所在路径:/bin/gunzip ④、执行权限:所有用户 ⑤、功能描述:解压缩.gz的压缩文件 ⑥、语法:gunzip 【压缩文件】
注意:解压完后不保留原文件
压缩后文件格式为: .gz
3、压缩解压命令:tar ①、命令名称:tar ②、英文原意: ③、命令所在路径:/bin/tar ④、执行权限:所有用户 ⑤、功能描述:打包目录 ⑥、语法:tar 选项【-zcf】【压缩后文件名】【目录】
-c 打包
-v 显示详细信息
-f 指定文件名
-z 打包同时压缩
压缩后文件格式: .tar.gz
范例:tar -zcvf a.tar.gz a 将 a 目录打包并压缩生成 a.tar.gz 的压缩文件
tar 命令解压缩语法
-x 解包
-v 显示详细信息
-f 指定解压文件
-z 解压缩
tar -zxvf a.tar.gz
4、压缩解压命令:zip ①、命令名称:zip ②、英文原意: ③、命令所在路径:/usr/bin/zip ④、执行权限:所有用户 ⑤、功能描述:压缩文件或目录 ⑥、语法:tar 选项【-r】【压缩后文件名】【文件或目录】
-r 压缩目录
压缩后文件:zip
5、压缩解压命令:unzip ①、命令名称:unzip ②、英文原意: ③、命令所在路径:/usr/bin/unzip ④、执行权限:所有用户 ⑤、功能描述:解压.zip 的压缩文件 ⑥、语法:unzip 【文件名】
6、压缩解压命令:bzip2(一般用来压缩比较大的文件) ①、命令名称:bzip2 ②、英文原意: ③、命令所在路径:/usr/bin/bzip2 ④、执行权限:所有用户 ⑤、功能描述:压缩文件 ⑥、语法:bzip2 选项【-k】 【文件】
-k 产生压缩文件后保留原文件
压缩后文件格式: .bz2
7、压缩解压命令:bunzip2 ①、命令名称:bunzip2 ②、英文原意: ③、命令所在路径:/usr/bin/bunzip2 ④、执行权限:所有用户 ⑤、功能描述:解压缩文件格式为 .bz2 的文件 ⑥、语法:bunzip2 选项【-k】 【压缩文件】
-k 解压缩文件后保留原文件
网络命令
1、网络命令:write ①、命令名称:write ②、英文原意: ③、命令所在路径:/usr/bin/write ④、执行权限:所有用户 ⑤、功能描述:给在线用户发送信息,Ctrl + D 结束 ⑥、语法:write 在线用户名
范例: write hadoop
2、网络命令:ping ①、命令名称:ping ②、英文原意: ③、命令所在路径:/bin/ping ④、执行权限:所有用户 ⑤、功能描述:测试网络连通性 ⑥、语法:ping 选项 IP地址
-c 指定发送次数
范例: ping www.baidu.com
ping -c 3 www.baidu.com
关机和重启命令
关机命令:
1、halt 立刻关机
2、poweroff 立刻关机
3、shutdown -h now 立刻关机(root用户使用)
4、shutdown -h 10 10分钟后自动关机 如果是通过shutdown命令设置关机的话,可以用shutdown -c命令取消重启
重启命令:
1、reboot
2、shutdown -r now 立刻重启(root用户使用)
3、shutdown -r 10 过10分钟自动重启(root用户使用)
4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 如果是通过shutdown命令设置重启的话,可以用shutdown -c命令取消重启
推荐使用 shotdown 命令,它会安全的将系统关闭