常用指令
ls
list的简写,查看文件或目录的信息。
常用参数:
参数 | 说明 |
---|---|
-a | 显示指定目录下所有目录与文件,包含隐藏文件 |
-l | 以列表方式显示文件的详细信息 |
-h | 配合-l以已读方式显示文件大小 |
ls通配符
符号 | 说明 |
---|---|
* | 匹配文件名中所有字符 |
ls h*.html ,匹配以h开头的所有html | |
? | 匹配文件名中任意一个字符 |
ls ?.html ,匹配任意单字符的html | |
[] | 匹配字符组[]中的任意一个字符,“-”表示字符范围 |
ls [abc].html ,匹配a、b、c任意一个字符的html | |
ls [a-c].html ,匹配a到c范围内任意一个字符的html | |
\ | 使通配符作为普通字符使用。用于转义字符 |
ls \*a.html ,查找文件名为*a的html |
重定向
将命令执行结果重定向到一个文件。
如:ls >out.txt
注意:
> 输出重定向会覆盖原来的内容。
>> 输出重定向则会追加到原文件的尾部。
more
分屏显示
如:more out.html
当文件内容很多时,使用more命令,每次只显示一页,按下空格显示下一页,按下q退出显示。
管道 |
一个命令的输出可以通过管道作为另一个命令的输入。
“|”的左右分为两段,左侧为写入,右侧为读取。
ls -lha | more
cat out.html | grep '^<div>'
clear
清屏。
cd
跳转。
参数 | 说明 |
---|---|
/ | 跳转到根目录 |
~ | 跳转到用户主目录 |
. | 跳转到当前目录 |
.. | 跳转到上一级目录 |
- | 跳转到上一次所在目录 |
pwd
显示当前的工作目录。
history
列举执行过的命令。
–help
帮助
ls --help
,显示ls的使用帮助。
man
帮助
man ls
,显示ls的使用帮助。
目录文件相关
touch
创建一个文件。
mkdir
创建目录
rm
删除文件或目录。
参数 | 说明 |
---|---|
-i | 以交互方式执行 |
-f | 强制删除,忽略不存在的文件,无需提示 |
-r | 递归删除目录下的内容,删除文件夹时必须加此参数 |
ln
建立链接文件
sudo ln 源文件 目标文件。
不占用磁盘空间,源文件删除则链接失效。
ln out.html out_link.html
两个文件占用相同大小的硬盘空间,即使删除了源文件,链接文件仍然存在。
ln -s out.html out_link.html
注意:只能链接普通文件,不能链接目录。
cat
查看或者合并文件内容
查看文件内容
cat out.html
合并文件内容到新文件
cat out1.html out2.html > out3.html
grep
从文件中搜索内容。支持使用正则表达式搜索。
参数 | 说明 |
---|---|
-v | 显示不包含匹配文本的所有行 |
-n | 显示匹配行号 |
-i | 忽略大小写 |
grep
从文件中搜索内容。支持使用正则表达式搜索。
参数 | 说明 |
---|---|
-v | 显示不包含匹配文本的所有行 |
-n | 显示匹配行号 |
-i | 忽略大小写 |
cp
将指定的文件或目录复制到另一个文件或目录中。
cp test/ conf/ -ivr
参数 | 说明 |
---|---|
-a | 通常在复制目录时使用,保留链接、文件属性、并递归复制目录,简单而言,保持文件原有属性。 |
-f | 已经存在的目标文件而不提示 |
-i | 交互式复制,在覆盖目标文件之前提示用户 |
-r | 递归复制目录下的所有目录和文件,目录文件必须是一个目录名。 |
-v | 显示复制进度 |
mv
移动文件或目录,也可以给文件或目录重命名。
mv test/ conf/ -ivr
参数 | 说明 |
---|---|
-a | 通常在复制目录时使用,保留链接、文件属性、并递归复制目录,简单而言,保持文件原有属性。 |
-f | 覆盖已经存在的目标文件时,不提示 |
-i | 交互式移动,在覆盖目标文件之前提示用户 |
-v | 显示移动进度 |
tar、gzip、bzip2
tar归档管理,把一些列文件归档到一个大文件中。
参数 | 说明 |
---|---|
-c | 生成档案文件,创建打包文件。 |
-v | 列出归档解档的详细过程,显示进度。 |
-f | 指定当前文件名称,f后面一定是.tar文件,所以必须放在选项最后。 |
-t | 列出档案中包含的文件。 |
-x | 解压档案文件。 |
tar -zcvf out.tar.gz *.html
,gzip压缩。
tar -zxvf out.tar.gz
, gzip格式解压缩。
tar -zxvf out.tar.gz -C ./test
, gzip格式解压缩到指定目录。
tar -jcvf out.tar.bz2 *.html
, bzip2格式压缩。
tar -jxvf out.tar.bz2
, bzip2格式解压缩。
zip out *.html
, zip格式压缩。
unzip -d test out.zip
, zip格式解压缩到指定目录。
查看当前目录文件的个数
ls | wc -l
系统管理
cal
显示日历
date
显示和设置时间
date [MMDDhhmm[[CC]YY][.ss]]
ps
查看进程的详细信息
ps -aux
参数 | 说明 |
---|---|
-a | 显示终端上的所有进程,包括其他用户的进程。 |
-u | 显示进程的详细状态。 |
-x | 显示没有控制终端的进程。 |
-w | 显示加宽,以便显示更多的信息。 |
-r | 只显示正在运行的进程。 |
top
动态显示运行中的进程。按q退出。
kill
结束指定PID的进程。
reboot、shutdown
指令 | 说明 |
---|---|
reboot | 重启系统。 |
shutdown -r now | 重启系统。 |
shutdown -h now | 立刻关机。 |
shutdown -h 0:0 | 指定时间关机。 |
shutdown -h +10 | 10分钟后关机。 |
df
显示磁盘空间占用和剩余情况。
du
显示目录占用磁盘情况。
ifconfig
查看或配置网卡信息。
ifconfig enp0s3 down
,关闭指定网卡的网络
ifconfig enp0s3 up
,启动指定网卡的网络
service network restart
重启网络。
ping
测试远程主机是否联通。
用户、权限管理
who
查看当前所有登录系统的用户。
whoami
查看当前账号的用户名。
ssh
远程登录。
ssh 用户名@ip:端口号
useradd
添加用户。
useradd 用户名 -m
cat /etc/passwd
,查看系统当前所有的用户名。
参数 | 说明 |
---|---|
-d | 指定用户登录系统时的主目录。默认在/home目录下创建与用户名相同的目录为主目录。 |
-m | 自动创建主目录。 |
-g | 指定用户组名称。 |
passwd
设置用户的密码。
passwd 用户名
userdel
删除用户。
userdel 用户名
sudo、su
sudo -s
,切换到管理员。
su - 用户名
,切换到指定的用户。
su -,切换到对应的用户时会将当前的工作目录自动转换到切换后的用户主目录。
查看组
查看系统当前所有的用户组:
cat /etc/group
groupmod
,按两次tab。
查找某个用户组
cat /etc/group | grep '用户组名'
groupadd
添加用户组。
groupdel
删除用户组。
usermod
修改用户所在组。
usermod -g 用户组名 用户名
,修改用户名默认的组。
usermod -G 用户组名 用户名
,修改用户非默认的组。
usermod -aG 用户组名 用户名
,给用户添加用户组。
groups
查看用户所在组。
groups 用户名
chmod
修改文件权限。
字母法:chmod u/g/o/a +/-/= rwx文件。
u/g/o/a | 说明 |
---|---|
u | user表示该文件的所有者。 |
g | group表示与该文件的所有者属于同一用户组者。 |
o | other表示除u和g之外的用户。 |
a | all表示所有用户。 |
+/-/= | 说明 |
---|---|
+ | 增加权限。 |
- | 撤销权限。 |
= | 设定权限。 |
数字法:
chmod 761 文件名
,
文件所有者,读、写、执行权限。
同组用户:读、写权限。
其它用户:执行权限。
字母 | 说明 |
---|---|
r | 读取权限,数字代号为“4”。 |
w | 写入权限,数字代号为“2”。 |
x | 执行权限,数字代号为“1”。 |
- | 不具有任何权限,数字代号为“0”。 |