Linux 的命令用法一般用 man 命令可以查看其帮助信息。
推荐一个 Linux 命令快查网站,中文 Linux 命令帮助大全:http://man.linuxde.net/
1 目录切换命令
-
cd 目录名:切换到当前目录下的目录名目录中
-
cd .. (或 cd ../):切换到上一级目录
-
cd /:切换到系统根目录
-
cd ~:切换到用户主目录
-
cd -:切换到上一个所在的目录
2 目录的操作命令
-
mkdir 目录名:在该目录下新建一个目录
-
ls(或 ll,ll 是 ls -l 的缩写,可以看到该目录下的所有目录和文件的详细信息):查看该目录下的所有文件,只显示文件名
-
find 目录 参数:查找目录
-
列出当前目录及子目录下所有文件和目录:find .
-
在/home 目录下查找以 .txt 结尾的文件名:find /home -name "*.txt"
-
在/home 目录下查找以 .txt 结尾的文件名(忽略大小写):find /home -iname "*.txt"
-
当前目录及子目录下查找所有以.txt和.pdf结尾的文件:find . ( -name " * .txt" -o -name "* .pdf" )或find . -name "* .txt" -o -name "*.pdf"
-
-
mv 目录名称 新目录名称:修改目录的名称(改)
mv命令的语法不仅可以对目录进行重命名,而且还可以对各种文件、压缩包等进行重命名操作。mv 命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中
-
mv 目录名称 目录的新位置:移动目录的位置 ---剪切的操作(改)
mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作。另外mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。
-
cp -r 目录名称 目录拷贝的目标位置:拷贝目录(改),-r 代表递归拷贝
cp命令不仅可以拷贝目录还可以拷贝文件、压缩包等,拷贝文件和压缩包时不用写 -r 递归
-
rm [-rf ]目录:删除目录
rm 不仅可以删除目录还可以删除文件或压缩包,建议无论删除何种文件或者是目录,都直接使用rm -rf 目录/文件/压缩包
3 文件的操作命令
-
touch 文件名称:创建文件
-
cat /more/less/tail 文件名称:查看文件
-
cat:只能显示最后一屏内容
-
more:可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看
-
less:可以使用键盘上的PgUp和PgDn向上和向下翻页,q结束查看
-
head -10:查看文件的前10行,Ctrl+ C结束
-
tail -10:查看文件的后10行,Ctrl+ C结束
-
tail -f 文件:可以实现对某个文件进行动态监控,例如日志文件会随着程序的运行而变化,我们可以使用tail -f 日志文件名来监控日志文件的变化
-
-
vim 文件:修改文件的内容
vim编辑器是Linux 中的强大组件,是vi 编辑器的加强版,vim命令很多,下面列举一些常用的。
在实际开发中,使用vim编辑器的主要目的就是修改配置文件和编写shell脚本文件,一般步骤如下:
vim 文件 ---->进入文件------>命令模式----->按 i 进入插入编辑模式------>编辑文件------>按 esc 进入底行模式------>输入:wq / q!(wq表示写入内容并退出保存,q!表示强制退出不保存)
-
命令模式
用vim打开一个文件之后就进入了命令模式,在这个模式下我们可以控制光标的移动,字符,字,或行的删除,移动复制某段区域,在该模式下可以进入插入模式也可以进入底行模式。
-
编辑模式
在编辑模式下才可以插入文件,按 esc 退出编辑模式进入底行模式
-
底行模式
在底行模式下保存文件或者是退出vim
-
-
vim 常用命令
-
移动光标
-
vim 可以使用小写英文字母 h j k l分别控制光标左 下 上 右 移动,也可以实用箭头
-
Ctrl + b 屏幕往后移动一页
-
Ctrl + f 屏幕往前移动一页
-
Ctrl + u 屏幕往后移动半页
-
Ctrl + d 屏幕往前移动半页
-
Shift+g == G 移动到文章的最后
-
Shift+4 == $ 移动到光标所在行的行尾
-
Shift+6 == ^ 移动到光标所在行的行首
-
w 光标跳转到下个字的开头
-
e 光标跳转到下个字的字尾
-
b 光标回到上个字的开头
-
#l:例如:5l ,56l 光标移动到该行的地 ‘#’ 个位置
-
gg 进入到文本的开始
-
-
删除文字
-
x 每按一次删除光标所在位置的一个字符
-
#x 例子:6x 删除光标所在位置的“后面”(包括自己在内的)6个字符
-
shift+x == X 每按一次,删除光标所在位置的前一个字符
-
Shift+ #x==#X 例子:20X 删除光标所在位置的前面20个字符
-
dd 删除光标所在行
-
#dd 例子:6dd 从光标所在行开始删除6行
-
-
复制
-
yw 将光标所在之处到字尾的字符复制到缓冲区中
-
#yw 例子:6yw 复制6个字符到缓冲区
-
yy 复制光标所在行到缓冲区
-
#yy 例子:6yy 拷贝从光标所在的该行“往下数”6行文字
-
p 将缓存区内的字符贴到光标所在位置
注意:所有与y有关的复制命令都必须与 p 配合才能完成复制粘贴功能
-
-
替换
-
r 替换光标所在处的字符
-
R 替换光标所到之处的字符,直到按下 Esc 键为止
-
-
撤销上一步操作
-
u 回到上一个操作,安东多次 ‘u’ 可以执行多次回复
-
-
更改
-
cw 更改光标所在处的字到字尾处
-
c#w 例子:c3w 表示更改三个字
-
-
跳至指定行
-
Ctrl+g 列出光标所在行的行号
-
#G 例子:15G 表示移动光标到文章的第15行行首
-
-
-
rm -rf 文件:删除文件
4 压缩文件的操作命令
-
打开并压缩文件:
Linux中的打包文件一般是以.tar结尾的,压缩的文件一般是以.gz结尾的。而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般是.tar.gz。命令:
tar -zcvf 打包压缩后的文件名 要打包压缩的文件
其中:z :调用 gzip 压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
-
解压压缩包
-
tar [-xvf] 压缩文件 [-C 解压的位置]
-
x:表示解压
-
-C:表示指定解压的位置
-
-
5 Linux的权限命令
操作系统中每个文件都拥有特定的权限、所属用户和所属组。权限是操作系统用来限制资源访问的机制,在Linux 中权限一般分为读(readable)、写(writeable)和执行(excutable),分为三组。分别对应文件的属主(owner)、属组(group)和其他用户(other),通过这样的机制来限制哪些用户、那些组可以对特定的文件进行什么样的操作。通过 ls -l
(即 ll
)命令我们可以查看某个目录下的文件或目录的权限。
-
文件类型
-
d
:代表目录 -
-
:代表文件 -
l
:代表链接(可以认为是Windows中的快捷方式)
-
-
权限分类
-
r:代表权限是可读,r也可以用数字4 表示
-
w:代表权限是可写,w也可以用数字2来表示
-
x:代表权限是可执行,x也可以用数字1来表示
-
-
文件和目录权限的区别
对文件和目录而言,读写执行表示不同的意义。
权限名称 文件可执行的操作 目录可执行的操作 r 可以使用cat查看文件内容 可以查看目录下列表 w 可以修改文件内容 可以创建和删除目录下的文件 x 可以将其运行为二进制文件 可以使用cd 进入目录
在linux中的每一个用户都必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其他组的概念。
-
所有者
一般为文件的创建者,谁创建了文件,就是该文件的所有者,用
ls -l
(即ll
)命令可以看到文件的所有者,也可以使用chown 用户名 文件名
来修改文件的所有者。 -
文件所在组
当某个用户创建了一个文件之后,这个文件的所在组就是该用户所在的组,用
ls -l
(即ll
)命令可以看到文件的所在组,也可以使用chgrp 组名 文件名
来修改文件所在的组。 -
其他组
除开文件的所有者和所在组的用户外,系统的其他用户都是文件的其他组。
修改文件/目录的权限的命令: chmod
示例:修改/test下的 aaa.txt 的权限为属主有全部权限,属主所在组有读写权限,其他用户只有读的权限:
chmod u=rwx,g=rw,o=r aaa.txt
这个示例还可以使用数字来表示:
chmod 761 aaa.txt
补充一个常用的:
假如我们安装了一个 Zookeeper,我们希望每次开机都要求其自动启动该怎么办?
-
新建一个脚本 zookeeper
-
为新建的脚本 zookeeper 添加可执行权限,命令是:
chmod +x zookeeper
-
把zookeeper 这个脚本添加到开机自启动项里面,命令是:
chkconfig --add zookeeper
-
如果想看是否添加成功,命令是:
chkconfig --list
6 Linux 用户管理
Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
Linux 用户管理相关命令:
-
useradd 选项 用户名
:添加用户账号 -
userdel 选项 用户名
:删除用户账号 -
usermod 选项 用户名
:修改账号 -
passwd 用户名
:更改或创建用户的密码 -
passwd -S 用户名
:显示用户账号密码信息 -
passwd -d 用户名
:清除用户密码 -
su - 用户名
:切换登录用户
useradd 命令用于 Linux 中创建的新的系统用户。useradd 可用来建立用户账号。账号建好之后,再用passwd 设定账号密码,而可用userdel 删除账号。使用useradd 指令所建立的账号,实际上是保存在/etc/passwd文本文件中。该文件内容的解释:用户名:密码:用户id:组id:用户说明:用户的主目录:用户使用的shell环境(默认是bash)
passwd 命令用于设置用户的认证信息,包括用户密码、密码过期时间等。系统管理员则能用它管理系统用户的密码。只有管理员可以指定用户名称,一般用户只能变更自己的密码。
7 Linux系统用户组的管理
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同,如Linux 下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
用户组管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group 文件的更新。
Linux 系统用户组的管理相关命令:
-
groupadd 选项 用户组
:增加一个新的用户组 -
groupdel 用户组
:删除一个已有的用户组 -
groupmod 选项 用户组
:修改用户组的属性
5.8 其他常用命令
-
pwd
:显示当前所在位置 -
grep 要搜索的字符 要搜索的文件 --color
:搜索命令,--color 代表高亮显示 -
ps -ef/ps aux
:这两个命令都是查看当前系统正在运行的进程,两者的区别是展示格式不同。如果想要查看特定的进程可以使用这样的格式:ps aux|grep redis
(查看包括redis字符串的进程)注意:如果直接用
ps
命令,会显示所有进程的状态,通常结合grep
命令查看某进程的状态。 -
kill -9 进程的pid
:杀死进程(-9 表示强制终止)先用ps查找进程,然后 kill 杀掉
-
网络通用命令:
-
查看当前系统的网卡信息:
ifconfig
-
查看与某台机器的连接情况:
ping
-
查看当前系统的端口号:
netstat
-
an :所有的连接和端口
-
tuln:查看正在监听TCP(t)和UDP(u)的端口,例如:
netstat -tuln |grep LISTEN
-
rn:查看网关
route -n
-
-
-
ln
:创建链接文件-
创建软链接文件:
ln -s [源文件][目标文件]
(硬链接不需要 -s 选项)-
软链接特点:权限是所有人都可以访问,并且软链接文件指向源文件
-
软链接就像是Windows中的快捷方式一样,特点也类似
-
硬链接:类似copy,硬链接大小和源文件一样,并且是同步更新的。
-
-
-
shutdown
:shutdown -h now
:指定现在立即关机;shutdown +5 “System will shutdown after 5 minutes”
:指定5分钟后关机,同时送出警告信息给登入用户。 -
reboot
:reboot:重开机。reboot -w
:做个重开机的模拟(只有记录并不会真的重开机)