Linux填0命令 linux常用命令写入

基本linux命令基本linux命令有哪些呢Linux填0命令?
1、ls命令
就是 list 的缩写Linux填0命令,通过 ls 命令不仅可以查看 linux 文件夹包含的文件Linux填0命令,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等 。
常用参数搭配:
ls -a 列出目录所有文件 , 包含以.开始的隐藏文件
ls -A 列出除.及..的其它文件
ls -r 反序排列
ls -t 以文件修改时间排序
ls -S 以文件大小排序
ls -h 以易读大小显示
ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来
实例:
(1) 按易读方式按时间反序排序,并显示文件详细信息
ls -lhrt
(2) 按大小反序显示文件详细信息
ls -lrS
(3)列出当前目录中所有以"t"开头的目录的详细内容
ls -l t*
(4) 列出文件绝对路径(不包含隐藏文件)
ls | sed "s:^:`pwd`/:"
(5) 列出文件绝对路径(包含隐藏文件)
find $pwd -maxdepth 1 | xargs ls -ld
2、cd 命令
cd(changeDirectory) 命令语法:
cd [目录名]
说明:切换当前目录至 dirName 。
实例:
(1)进入要目录
cd /
(2)进入 "home" 目录
cd ~
(3)进入上一次工作路径
cd -
(4)把上个命令的参数作为cd参数使用 。
cd !$
3、pwd 命令
pwd 命令用于查看当前工作目录路径 。
实例:
(1)查看当前路径
pwd
(2)查看软链接的实际路径
pwd -P
4、mkdir 命令
mkdir 命令用于创建文件夹 。
可用选项:
-m: 对新建目录设置存取权限,也可以用 chmod 命令设置;
-p: 可以是一个路径名称 。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不在的目录,即一次可以建立多个目录 。
实例:
(1)当前工作目录下创建名为 t的文件夹
mkdir t
(2)在 tmp 目录下创建路径为 test/t1/t 的目录 , 若不存在,则创建:
mkdir -p /tmp/test/t1/t
5、rm 命令
删除一个目录中的一个或多个文件或目录,如果没有使用 -r 选项,则 rm 不会删除目录 。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状 。
rm [选项] 文件…
实例:
(1)删除任何 .log 文件,删除前逐一询问确认:
rm -i *.log
(2)删除 test 子目录及子目录中所有档案删除,并且不用一一确认:
rm -rf test
(3)删除以 -f 开头的文件
rm -- -f*
6、rmdir 命令
从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对其父目录的写权限 。
注意:不能删除非空目录
实例:
(1)当 parent 子目录被删除后使它也成为空目录的话,则顺便一并删除:
rmdir -p parent/child/child11
7、mv 命令
移动文件或修改文件名,根据第二参数类型(如目录 , 则移动文件Linux填0命令;如为文件则重命令该文件) 。
当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中 。
实例:
(1)将文件 test.log 重命名为 test1.txt
mv test.log test1.txt
(2)将文件 log1.txt,log2.txt,log3.txt 移动到根的 test3 目录中
mv llog1.txt log2.txt log3.txt /test3
(3)将文件 file1 改名为 file2,如果 file2 已经存在,则询问是否覆盖
mv -i log1.txt log2.txt
(4)移动当前文件夹下的所有文件到上一级目录
mv * ../
8、cp 命令
将源文件复制至目标文件,或将多个源文件复制至目标目录 。
注意:命令行复制 , 如果目标文件已经存在会提示是否覆盖,而在 shell 脚本中 , 如果不加 -i 参数,则不会提示,而是直接覆盖Linux填0命令!
-i 提示
-r 复制目录及目录内所有项目
-a 复制的文件与原文件时间一样
实例:
(1)复制 a.txt 到 test 目录下,保持原文件时间,如果原文件存在提示是否覆盖 。
cp -ai a.txt test
(2)为 a.txt 建议一个链接(快捷方式)
cp -s a.txt link_a.txt
9、cat 命令
cat 主要有三大功能:
1.一次显示整个文件:
cat filename
2.从键盘创建一个文件:
catfilename
只能创建新文件,不能编辑已有文件 。
3.将几个文件合并为一个文件:
cat file1 file2file
-b 对非空输出行号
-n 输出所有行号
实例:
(1)把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里
cat -n log2012.log log2013.log
(2)把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里
cat -b log2012.log log2013.log log.log
(3)使用 here doc 生成新文件
cat log.txt EOF
Hello
World
PWD=$(pwd)
EOF
ls -l log.txt
cat log.txt
Hello
World
PWD=/opt/soft/test
(4)反向列示
tac log.txt
PWD=/opt/soft/test
World
Hello
10、more 命令
功能类似于 cat, more 会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示 。
命令参数:
n从笫 n 行开始显示
-n定义屏幕大小为n行
/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
-c从顶部清屏,然后显示
-d提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
-l忽略Ctrl l(换页)字符
-p通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似
-s把连续的多个空行显示为一行
-u把文件内容中的下画线去掉
常用操作命令:
Enter向下 n 行,需要定义 。默认为 1 行
Ctrl F向下滚动一屏
空格键向下滚动一屏
Ctrl B返回上一屏
=输出当前行的行号
:f输出文件名和当前行的行号
V调用vi编辑器
!命令调用Shell,并执行命令
q退出more
实例:
(1)显示文件中从第3行起的内容
more3 text.txt
(2)在所列出文件目录详细信息,借助管道使每次显示 5 行
ls -l | more -5
按空格显示下 5 行 。
11、less 命令
less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件 。
常用命令参数:
-i忽略搜索时的大小写
-N显示每行的行号
-o文件名 将less 输出的内容在指定文件中保存起来
-s显示连续空行为一行
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
-x 数字 将“tab”键显示为规定的数字空格
b向后翻一页
d向后翻半页
h显示帮助界面
Q退出less 命令
u向前滚动半页
y向前滚动一行
空格键 滚动一行
回车键 滚动一页
[pagedown]: 向下翻动一页
[pageup]:向上翻动一页
实例:
(1)ps 查看进程信息并通过 less 分页显示
ps -aux | less -N
(2)查看多个文件
less 1.log 2.log
可以使用 n 查看下一个,使用 p 查看前一个 。
12、head 命令
head 用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行 。
常用参数:
-n行数 显示的行数(行数为复数表示从最后向前数)
实例:
(1)显示 1.log 文件中前 20 行
head 1.log -n 20
(2)显示 1.log 文件前 20 字节
head -c 20 log2014.log
(3)显示 t.log最后 10 行
head -n -10 t.log
13、tail 命令
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理 。常用查看日志文件 。
常用参数:
-f 循环读?。ǔS糜诓榭吹菰龅娜罩疚募?
-n行数 显示行数(从后向前)
(1)循环读取逐渐增加的文件内容
ping 127.0.0.1ping.log
后台运行:可使用 jobs -l 查看,也可使用 fg 将其移到前台运行 。
tail -f ping.log
(查看日志)
14、which 命令
在 linux 要查找某个文件,但不知道放在哪里了 , 可以使用下面的一些命令来搜索:
which查看可执行文件的位置 。
whereis 查看文件的位置 。
locate配合数据库查看文件位置 。
find实际搜寻硬盘查询文件名称 。
which 是在 PATH 就是指定的路径中,搜索某个系统命令的位置,并返回第一个搜索结果 。使用 which 命令,就可以看到某个系统命令是否存在 , 以及执行的到底是哪一个位置的命令 。
常用参数:
-n指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名 。
实例:
(1)查看 ls 命令是否存在,执行哪个
which ls
(2)查看 which
which which
(3)查看 cd
which cd(显示不存在 , 因为 cd 是内建命令 , 而 which 查找显示是 PATH 中的命令)
查看当前 PATH 配置:
echo $PATH
或使用 env 查看所有环境变量及对应值
15、whereis 命令
whereis 命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s) 。如果省略参数,则返回所有信息 。whereis 及 locate 都是基于系统内建的数据库进行搜索,因此效率很高,而find则是遍历硬盘查找文件 。
常用参数:
-b定位可执行文件 。
-m定位帮助文件 。
-s定位源代码文件 。
-u搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件 。
实例:
(1)查找 locate 程序相关文件
whereis locate
(2)查找 locate 的源码文件
whereis -s locate
(3)查找 lcoate 的帮助文件
whereis -m locate
linux下怎样将一个文件填充为0xff,用命令以下程序可以填充文件后面全部为0xff到指定大小.
test.c
#include stdio.h
/*
* Return:0, OK
*-1, Fail
*/
unsigned long int appendFile(char *destFilePath, unsigned long int appendLength)
{
unsigned char tmpBuf[1024];
int i = 0;
FILE *fp;
for(i = 0; i1024; i)
{
tmpBuf[i] = 0xFF;
}
if ((fp = fopen(destFilePath, "ab "))==NULL)
{
printf("Can not open file %s \n", destFilePath);
return -1;
}
while(appendLength0)
{
if (appendLength = 1024)
{
fwrite(tmpBuf, sizeof(char), appendLength, fp);
appendLength -= appendLength;
}
else
{
fwrite(tmpBuf, sizeof(char), 1024, fp);
appendLength -= 1024;
}
}
fclose(fp);
return 0;
}
#define SRC_FILE"./file1.bin"
#define DEST_FILE"./file2.bin"
void main(void)
{
unsigned long int totalLength = (85504 - 13824) * 1024;
unsigned long int fileLength = 57751552;
unsigned long int appendLength = totalLength - fileLength;
appendFile(DEST_FILE, appendLength);
}
linux输入0,显示arg:0在Linux中,输入0会提示“arg: 0”,这是一个提示 , 表示你正在输入一个命令行参数(argument) 。参数是指定给某个程序(或脚本)的输入,它可以是文件名、目录名、变量名或其他任何东西 。
Linux命令大全linux命令格式:
说明:command: 命令名,相应功能的英文单词或单词的缩写 [-options]:选项,可用来对命令进行控制,也可以省略,[]代表可选 parameter1 …:传给命令的参数:可以是零个一个或多个
一般是linux命令自带的帮助信息
如:
man是linux提供的一个手册,包含了绝大部分的命令、函数使用说明
该手册分成很多章节(section),使用man时可以指定不同的章节来浏览 。
例:man ls ; man 2 printf
man中各个section意义如下:
man是按照手册的章节号的顺序进行搜索的 。
man设置了如下的功能键:
在敲出命令的前几个字母的同时 , 按下tab键,系统会自动帮我们补全命令
当系统执行过一些命令后,可按上下键翻看以前的命令,history将执行过的命令列举出来
ls是英文单词list的简写,其功能为列出目录的内容,是用户最常用的命令之一,它类似于DOS下的dir命令 。
Linux文件或者目录名称最长可以有265个字符,“.”代表当前目录,“..”代表上一级目录,以“.”开头的文件为隐藏文件 , 需要用 -a 参数才能显示 。
ls常用参数:
Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中 。
如:lstest.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )
注意: 输出重定向会覆盖原来的内容,输出重定向则会追加到文件的尾部 。
查看内容时,在信息过长无法在一屏上显示时 , 会出现快速滚屏,使得用户无法看清文件的内容,此时可以使用more命令,每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助 。
管道:一个命令的输出可以通过管道做为另一个命令的输入 。
管道我们可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里“ | ”的左右分为两端,左端塞东西(写),右端取东西(读) 。
clear作用为清除终端上的显示(类似于DOS的cls清屏功能),也可使用快捷键:Ctrll ( “l” 为字母 ) 。
在使用Unix/Linux的时候,经常需要更换工作目录 。cd命令可以帮助用户切换工作目录 。Linux所有的目录和文件名大小写敏感
cd后面可跟绝对路径,也可以跟相对路径 。如果省略目录,则默认切换到当前用户的主目录 。
使用pwd命令可以显示当前的工作目录 , 该命令很简单,直接输入pwd即可,后面不带参数 。
通过mkdir命令可以创建一个新的目录 。参数-p可递归创建目录 。
需要注意的是新建目录的名称不能与当前目录中已有的目录或文件同名,并且目录创建者必须对当前目录具有写权限 。
可使用rmdir命令删除一个目录 。必须离开目录 , 并且目录必须为空目录,不然提示删除失败 。
可通过rm删除文件或目录 。使用rm命令要小心,因为文件删除后不能恢复 。为了防止文件误删,可以在rm后使用-i参数以逐个确认要删除的文件 。
常用参数及含义如下表所示:
Linux链接文件类似于Windows下的快捷方式 。
链接文件分为软链接和硬链接 。
软链接:软链接不占用磁盘空间,源文件删除则软链接失效 。
硬链接:硬链接只能链接普通文件,不能链接目录 。
使用格式:
如果没有-s选项代表建立一个硬链接文件,两个文件占用相同大小的硬盘空间,即使删除了源文件 , 链接文件还是存在 , 所以-s选项是更常见的形式 。
注意:如果软链接文件和源文件不在同一个目录 , 源文件要使用绝对路径,不能使用相对路径 。
Linux系统中grep命令是一种强大的文本搜索工具,grep允许对文本文件进行模式查找 。如果找到匹配模式,grep打印包含模式的所有行 。
grep一般格式为:
在grep命令中输入字符串参数时,最好引号或双引号括起来 。例如:grep‘a ’1.txt 。
常用选项说明:
find命令功能非常强大,通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件 。
常用用法:
cp命令的功能是将给出的文件或目录复制到另一个文件或目录中 , 相当于DOS下的copy命令 。
常用选项说明:
用户可以使用mv命令来移动文件或目录,也可以给文件或目录重命名 。
常用选项说明:
计算机中的数据经常需要备份,tar是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中 , 也可以把档案文件解开以恢复数据 。
tar使用格式 tar [参数] 打包文件名 文件
tar命令很特殊,其参数前面可以使用“-”,也可以不使用 。
常用参数:
tar与gzip命令结合使用实现文件打包、压缩 。tar只负责打包文件 , 但不压缩,用gzip压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz 。
gzip使用格式如下:
gzip [选项] 被压缩文件
常用选项:
tar与bzip2命令结合使用实现文件打包、压缩(用法和gzip一样) 。
tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般用xxxx.tar.gz2 。
在tar命令中增加一个选项(-j)可以调用bzip2实现了一个压缩的功能,实行一个先打包后压缩的过程 。
压缩用法:tar -jcvf 压缩包包名 文件...(tar jcvf bk.tar.bz2 *.c)
解压用法:tar -jxvf 压缩包包名 (tar jxvf bk.tar.bz2)
通过zip压缩文件的目标文件不需要指定扩展名,默认扩展名为zip 。
压缩文件:zip [-r] 目标文件(没有扩展名) 源文件
解压文件:unzip -d 解压后目录文件 压缩文件
whoami该命令用户查看当前系统当前账号的用户名 。可通过cat /etc/passwd查看系统用户信息 。
由于系统管理员通常需要使用多种身份登录系统,例如通常使用普通用户登录系统,然后再以su命令切换到root身份对传统进行管理 。这时候就可以使用whoami来查看当前用户的身份 。
who命令用于查看当前所有登录系统的用户信息 。
常用选项:
如果是图形界面,退出当前终端;
如果是使用ssh远程登录,退出登陆账户;
如果是切换后的登陆用户,退出则返回上一个登陆账号 。
在Unix/Linux中添加用户账号可以使用adduser或useradd命令,因为adduser命令是指向useradd命令的一个链接,因此,这两个命令的使用格式完全一样 。
useradd命令的使用格式如下:
useradd [参数] 新建用户账号
在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户口令 。用户也可以直接使用该命令来修改自己的口令 , 而无需在命令后面使用用户名 。
可以通过su命令切换用户,su后面可以加“-” 。su和su –命令不同之处在于 , su -切换到对应的用户时会将当前的工作目录自动转换到切换后的用户主目录:
注意:如果是ubuntu平台,需要在命令前加“sudo” , 如果在某些操作需要管理员才能操作,ubuntu无需切换到root用户即可操作,只需加“sudo”即可 。sudo是ubuntu平台下允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,减少了root 用户的登陆和管理时间,提高了安全性 。
方法一:
方法二:
groupadd 新建组账号 groupdel 组账号 cat /etc/group 查看用户组
使用方法:usermod -g 用户组 用户名
新创建的用户,默认不能sudo,需要进行一下操作
-g用来制定这个用户默认的用户组
-G一般配合'-a'来完成向其它组添加
chmod 修改文件权限有两种使用格式:字母法与数字法 。
字母法:chmod u/g/o/a/-/= rwx 文件
cal命令用于查看当前日历,-y显示整年日历
设置时间格式(需要管理员权限):
date [MMDDhhmm[[CC]YY][.ss]]format
CC为年前两位yy为年的后两位,前两位的mm为月,后两位的mm为分钟,dd为天 , hh为小时,ss为秒 。如: date 010203042016.55 。
显示时间格式(date ' %y,%m,%d,%H,%M,%S'):
进程是一个具有一定独立功能的程序 , 它是操作系统动态执行的基本单元 。
ps命令可以查看进程的详细状况,常用选项(选项可以不加“-”)如下:
top命令用来动态显示运行中的进程 。top命令能够在运行后,在指定的时间间隔更新显示信息 。可以在使用top命令时加上-d 来指定显示信息更新的时间间隔 。
在top命令执行后 , 可以按下按键得到对显示的结果进行排序:
kill命令指定进程号的进程,需要配合 ps 使用 。有些进程不能直接杀死,这时候我们需要加一个参数“ -9 ” , “ -9 ” 代表强制结束.
使用格式:
kill [-signal] pid
df命令用于检测文件系统的磁盘空间占用和空余情况,可以显示所有文件系统对节点和磁盘块的使用情况 。
du命令用于统计目录或文件所占磁盘空间的大?。妹畹闹葱薪峁雂f类似 , du更侧重于磁盘的使用状况 。
du命令的使用格式如下: du [选项] 目录或文件名
Linux常用命令列出当前目录的文件
常用参数:
-a: 显示当前目录的所有文件,包含隐藏文件;
-l: 显示文件详情;
-Z: 显示文件的 SE Linux context 。
示例:ls -laZ [if !vml] [endif] 以 acct 为例: drwxr-xr-x:其中 d 代表该文件为目录,若为 l 则为软链接,软连接后又箭头代表其实际指向的文件,如etc - /system/etc 则访问 etc 实际等同访问/system/etc,留空则代表该文件为一个文件;rwxr-xr-x 代表其权限为 755,具体算法为将上述字段每 3 个分为 1 组得 rwx,r-x,r-x,凡是有字母标记的皆计数 1,反之为 0,得二进制 111,101,101,转为 10 进制数字即得7 , 5,5 , 即为该文件权限; root root :依次代表该文件的所有者(owner)为 root,用户组(group)为 root,上述属性可通过 chown 命令修改,日常替换文件需与原文件该属性维持一致; unlabeled:代表 SE Linux context 。
前往指定目录
更改文件所有者和用户组示例:chown root:root temfile 将 tmpfile文件 的所有者和用户组从 meidia:media 更改为 root:root
将文件内容显示出来 。
注意不要随便去 cat 一个很大的文件或与 log 驱动节点无关的文件,否则将造成串口输出乱码或死机?。。∈纠篶at /proc/kmsg 将打印出所有 kernel log 。
用于抓取 android logcat 打印 。
常用参数:
-v : 设置打印格式,可用选项为 brief process tag thread raw time threadtime long,我们比较常用 logcat -v time,此时抓的 log 将在每一行开头添加时间信息;
-s : 设置过滤器,过滤器的选择取决于软件中打印 log 时使用的 TAG ,如
ActivityManagerService.java 中的打印使用的 TAG = ActivityManager,则抓相关打印方法为 logcat -s ActivityManager;
-c : 清除 log 缓存 , 常用于清除之前的打印缓存,如复现某个必现问题,则可先执行 logcat -c 再抓 logcat 重现必现手法以排除无关 log 冗余信息影响问题定位; pm
包管理命令,用于管理安卓 app 应用 。
常用参数:
-l : 显示所有安装包应用,等同于 pm list packages
以 package:/system/priv-app/Launcher2.apk=com.android.launcher 为例:
Apk Launcher2 路径位于/system/priv-app/Launcher2.apk,其包名为 com.android.launcher
path : 根据报名返回所在 apk 路径
install : 安装 apk
-r :安装一个已经存在的 apk 并保留其数据;
-d : 允许降级安装
如:pm install -r xxx.apk
uninstall : 卸载 apk , 命令仅支持卸载 data/app,后接包名;
如:pm uninstall com.sys.migusmartlink.ott.tv //卸载包名为 com.sys.migusmartlink.ott.tv 的 apk
随机测试指令 , 会自动模拟一些用户操作对 APP 进行压力测试 。
常用参数:
-p :指定启动的 APK,我们比较常用的是 monkey -p com.xxx.yyy 1 来启动一个 apk 的随机页面 。
用于启动和管理 activity 和 service
常用参数:
start : 后接 intent 启动一个页面;
startservice : 后接 intent 启动一个 service; stopservice :后接 intent 停止一个 service; broadcast :后接一个 intent 发送一个广播; kill :后接一个 app 包名,杀掉该 app 所有进程;在 shell 环境下用如下参数表述一个 intent:
[-a ACTION] [-d DATA_URI] [-t MIME_TYPE]
[-c CATEGORY [-c CATEGORY] ...]
[-e|--es EXTRA_KEY EXTRA_STRING_VALUE ...]
[--esn EXTRA_KEY ...]
[--ez EXTRA_KEY EXTRA_BOOLEAN_VALUE ...]
[--ei EXTRA_KEY EXTRA_INT_VALUE ...]
[--el EXTRA_KEY EXTRA_LONG_VALUE ...]
[--ef EXTRA_KEY EXTRA_FLOAT_VALUE ...]
[--eu EXTRA_KEY EXTRA_URI_VALUE ...]
[--ecn EXTRA_KEY EXTRA_COMPONENT_NAME_VALUE]
[--eia EXTRA_KEY EXTRA_INT_VALUE[,EXTRA_INT_VALUE...]]
[--ela EXTRA_KEY EXTRA_LONG_VALUE[,EXTRA_LONG_VALUE...]]
[--efa EXTRA_KEY EXTRA_FLOAT_VALUE[,EXTRA_FLOAT_VALUE...]]
[-n COMPONENT] [-f FLAGS]
示例:
如我们在 logcat 抓到如下打印启动了播放器:
START u0 {act=android.intent.action.VIEW dat=[4KH265_60.000fps_9Mbps]Wetek-Astra-2m.mp4 typ=video/* flg=0x13000000 cmp=com.meson.videoplayer/.VideoPlayer} from pid 15204
则我们可以使用如下 am 指令来启动它:
am start -a android.intent.action.VIEW -d [4KH265_60.000fps_9Mbps]Wetek-Astra-2m.mp4 -t video/* -f 0x13000000 -n com.meson.videoplayer/.VideoPlayer am start -n com.android.settings/.Settings //启动原生安卓设置主页
am broadcast -a com.chinamobile.action.KEY_PRESS_DOWN --ei keyCode 11am broadcast -a com.chinamobile.action.IR_TEST --es irphycode "0x008EDD22" //发送广播
查找命令,查找文件中是否包含指定字符串并输出该行示例:
grep -rns "repeat" /system/etc/remote1.conf //找出/system/etc/remote1.conf 所有包含 repeat 的行并展示行号
参数说明:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容 。其作用等于dpR参数组合 。
-d:复制时保留链接 。这里所说的链接相当于Windows系统中的快捷方式 。
-f:覆盖已经存在的目标文件而不给出提示 。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖 。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中 。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件 。
-l:不复制文件,只是生成链接文件 。
命令示例:cp -a aparentPath/sonPath/ a对应当前文件夹下目录或文件名可替换为绝对路径
移动指令,等效于 windows 的移动和重命名 。
示例:
mv /data/tmp1 /data/local/tmp2 //将 data/tmp1移动到/data/local/ 并重命名为 tmp2
删除指令,用于删除文件和文件夹,示例:
rm -rf tmp // 删除 tmp,建议加上-rf参数,其会删除 tmp 所有的目录和文件 。
创建目录 。常用参数:
-p :若 mkdir -p 后接路径包含不存在路径则一并创建 。
同步命令,常用于 cp 替换文件或指令结束后同步状态,有益无害 。
重定向,即将一个命令的输出指向另外路径的文件,使用覆盖模式,即重定向到的文件若存在将覆盖里面的内容 。
示例:
logcat/data/xxx.log; //将 logcat输出到/data/xxx.log;
cat /proc/kmsg/data/kmsg.log; //将 kmsg 打印输出重定向到/data/kmsg.log
重定向,即将一个命令的输出指向另外路径的文件,使用拼接模式,即重定向到的文件若存在则将输出拼接到原文件的后面 。
示例:
logcat/data/xxx.log; //例如我们做 netreboot的时候需要每一次开关机的 log,则会用拼接模式记录log 。
将指令放至后台静默执行 。
依次执行指令,若有指令执行失败,则后续指令不会执行 。
示例:
logcat -clogcat //先清除 logcat 缓存再抓取 log
Linux命令命令格式: 命令 [-选项] [参数]
如:ls -la /usr
**说明:**
大部分命令遵从该格式
多个选项时,可以一起写 eg:ls –l –a à ls –la
简化选项与完整选项(注:并非所有选项都可使用完整选项)eg:ls –all à ls –a
作用:切换用户身份
语法:su [选项] 用户名
-c 仅执行一次命令,而不切换用户身份
$ su – root
env
$ su – root –c “useradd longjing”
文件或目录的CRUD
英文:change directory命令路径:内部命令执行权限:所有用户
作用: 切换目录
语法:cd [目录]/ 切换到根目录
.. 回到上一级目录
. 当前目录
~ 当前用户的宿主目录(eg:# cd ~用户名 进入某个用户的家目录)
英文:list 命令路径:/bin/ls 执行权限:所有用户
作用:显示目录文件
语法:ls [-alrRd] [文件或目录]
-a all 显示所有文件 , 注意隐藏文件,特殊目录.和..
-l(long) 显示详细信息
-R(recursive)递归显示当前目录下所有目录
-r (reverse) 逆序排序
-t(time)按修改时间排序(降序)
英文:print working directory 命令路径:/bin/pwd 执行权限:所有用户
作用:显示当前工作目录
语法:pwd [-LP]
-L 显示链接路径,当前路径 , 默认
-P 物理路径
eg:# cd /etc/init.d
英文:make directories 命令路径:/bin/mkdir 执行权限:所有用户
作用:创建新目录
语法:mkdir [-p] 目录名
-p 父目录不存在情况下先生成父目录 (parents)
eg: mkdir linux/test 如果目录linux不存在 , 则报错 , 使用参数-p即可自动创建父目录 。
命令路径:/bin/touch 执行权限:所有用户
作用:创建空文件或更新已存在文件的时间
语法:touch 文件名
eg:toucha.txtb.txttouch {a.txt,b.txt}同时创建多个文件
创建带空格的文件 eg:touch "program files" 在查询和删除时也必须带双引号
注意:生产环境中,文件名,一定不要加空格
英文:copy 命令路径:/bin/cp 执行权限:所有用户
作用:复制文件或目录
语法:cp [–rp] 源文件或目录 目的目录
-r -R recursive 递归处理,复制目录
-p 保留文件属性 (原文件的时间不变)
eg:
1 , 相对路径 cp –R /etc/* . cp –R ../aaa ../../test/
2,,绝对路径 cp –R/ ect/service /root/test/aa/bb
英文:move 命令路径:/bin/mv 执行权限:所有用户
作用:移动文件或目录、文件或目录改名
语法:mv 源文件或目录 目的目录
英文:remove 命令路径:/bin/rm 执行权限:所有用户
作用:删除文件
语法: rm [-rf] 文件或目录
-r(recursive)删除目录,同时删除该目录下的所有文件
-f(force) 强制删除文件或目录 即使原档案属性设为唯读,亦直接删除,无需逐一确认
注意:工作中,谨慎使用rm –rf 命令 。
扩展点 :删除乱码文件
一些文件乱码后使用rm -rf 依然无法删除
此时 , 使用ll -i 查找到文件的inode节点
然后使用find . -inum 查找到的inode编号-exec rm {} -rf ;
就能顺利删除了
英文:concatenate 命令路径:/bin/cat 执行权限:所有用户
作用:显示文件内容
语法:cat [-n] [文件名]
-n 显示行号
eg:cat /etc/services
命令路径:/bin/more 执行权限:所有用户
作用:分页显示文件内容
语法:more [文件名]
空格或f显示下一页
Enter键显示下一行
q或Q退出
命令路径:/usr/bin/head 执行权限:所有用户
作用:查看文件前几行(默认10行)
语法:head [文件名]
-n 指定行数
eg:head -20 /etc/services head –n 3 /etc/services
命令路径:/usr/bin/tail 执行权限:所有用户
作用:查看文件的后几行
语法:tail [文件名]
-n 指定行数
-f (follow) 动态显示文件内容
获取一个大文件的部分文件,可使用head或tail命令
head -n 100 /etc/services config.log
英文: link命令路径:/bin/ln 执行权限:所有用户
作用:产生链接文件
语法:
ln -s[源文件][目标文件] 创建软链接源文件 使用 绝对路径
ln [源文件][目标文件] 创建硬链接
eg:ln -s /etc/service./service.soft
创建文件/etc/service的软链接service.soft
eg:/etc/service/service.hard
创建文件/etc/service的硬链接/service.hard
软连接类似于windows下的快捷方式
软连接文件格式:
lrwxrwxrwx. 1 root root 13 Jul 20 07:50 service - /etc/services
1 硬链接数量,如果该文件没有硬链接,就只有本身一个硬链接 。
13链接文件的长度
格式解析(特征):
1,软连接的文件类型是 l(软连接),软连接文件的权限 都是 lrwxrwxrwx
2 , -箭头指向到源文件
真正的权限取决于对源文件的权限
时间值为创建软连接的时间
软连接可以跨文件系统生成
硬链接特征
1,相当于 cp -p同步更新
2 , 通过i节点识别,与源文件有相同的inode节点
3 , 硬链接不能跨分区,ln /home/test/issuels /boot/test (错误)
4,不能针对目录使用 ln /tmp/ aa.hard (无法将目录/tmp 生成硬链接)
删除软连接
rm -rf symbolic_name
英文:manual命令路径:/usr/bin/man 执行权限:所有用户
作用:获取命令或配置文件的帮助信息
语法:man [命令/配置文件]
eg:man lsmanservices
(查看配置文件时,不需要配置文件的绝对路径,只需要文件名即可)
调用的是more命令来浏览帮助文档 , 按空格翻下一页,按回车翻下一行,按q退出 。
使用/加上关键的参数可直接定位搜索 , n查找下一个,shift n查找上一个
eg: /-l 直接查看-l的介绍
扩展:man的级别(帮助文档的类型, 了解1 5即可)
man man-pages 查看每一种类型代表的含义 man文档的类型(1~9)
1是命令,5是配置文件 man优先显示命令,可指定帮助类型
eg:man 5 passwd (5代表配置文件级别)
[图片上传失败...(image-6718d2-1624438708895)]
help查看shell内置命令的帮助信息
eg:help cd
内置命令 , 使用whereis,which,man都不能查看
type 命令 查看内部命令还是外部命令
命令名 --help 列举该命令的常用选项
eg: cp --help
命令路径:/bin/find 执行权限:所有用户
作用:查找文件或目录
语法:find [搜索路径] [匹配条件]
如果没有指定搜索路径,默认从当前目录查找
find命令选项
-name按名称查找精准查找
eg:find/etc-name“init” 在目录/etc中查找文件init
-iname按名称查找
find查找中的字符匹配:
*:匹配所有
?:匹配单个字符
eg:find/etc-name“init???”在目录/etc中查找以init开头的 , 且后面有三位的文件
模糊匹配的条件,建议使用单引号或双引号括起来 。如果*被转义 , 可使用 单双引号括住查询条件,或者使用* 。
eg: # find . –name *g
-size****按文件大小查找
以block为单位,一个block是512B, 1K=2block大于 -小于 不写是等于
eg:find /etc -size -204800在etc目录下找出大于100MB的文件
100MB=102400KB=204800block
**-type **按文件类型查找
f 二进制文件l 软连接文件 d 目录 c 字符文件
eg:find /dev -type c
find****查找的基本原则 :
占用最少的系统资源,即查询范围最?。檠跫罹?
eg:
如果明确知道查找的文件在哪一个目录 , 就直接对指定目录查找,不查找根目录/
命令路径:/bin/grep 执行权限:所有用户
作用:在文件中搜寻字串匹配的行并输出
语法:grep [-cinv] '搜寻字符串' filename
选项与参数:
-c :输出匹配行的次数(是以行为单位,不是以出现次数为单位)
-i :忽略大小写,所以大小写视为相同
-n :显示匹配行及行号
-v :反向选择,显示不包含匹配文本的所有行 。
eg:grep ftp/etc/services
eg:#grep -v ^# /etc/inittab 去掉文件行首的#号
eg:# grep -n “init”/etc/inittab 显示在inittab文件中,init匹配行及行号
eg:# grep -c“init”/etc/inittab 显示在inittab文件中,init匹配了多少次
命令路径:/usr/bin/which 执行权限:所有用户
作用: 显示系统命令所在目录(绝对路径及别名)
which命令的作用是 , 在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果 。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令
alias ls='ls --color=auto'
/bin/ls
/usr/bin/which: no zs in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/ch/bin)
命令路径:/usr/bin/whereis 执行权限:所有用户
作用:**搜索命令所在目录 配置文件所在目录 及帮助文档路径**
eg: which passwd和 whereispasswd
eg:查看/etc/passwd配置文件的帮助,就用 man 5 passwd
英文:GNU zip命令路径:/bin/gzip 执行权限:所有用户
作用:压缩(解压)文件,压缩文件后缀为.gz
gzip只能压缩文件,不能压缩目录;不保留原文件
语法:gzip 文件
-d将压缩文件解压(decompress)
解压使用gzip –d或者 gunzip
命令路径:/usr/bin/bzip2 执行权限:所有用户
作用: 压缩(解压)文件,压缩文件后缀为.bz2
语法:bzip2 [-k] [文件]
-k:产生压缩文件后保留原文件(压缩比高)
-d 解压缩的参数(decompress)
解压使用bzip2 –d或者 bunzip2
命令路径:/usr/bin/zip 执行权限:所有用户
作用: 压缩(解压)文件,压缩文件后缀为.zip
语法:zip 选项[-r][压缩后文件名称] [文件或目录]
-r压缩目录
eg:zip services.zip /etc/services压缩文件;
zip -r test.zip/test压缩目录
如果不加-r选项,压缩后的文件没有数据 。
解压使用unzip
命令路径:/bin/tar 执行权限:所有用户
作用:文件、目录打(解)包
语法:tar [-zcf] 压缩后文件名文件或目录
-c 建立一个压缩文件的参数指令(create),后缀是.tar
-x 解开一个压缩文件的参数指令(extract)
-z 以gzip命令压缩/解压缩
-j以bzip2命令压缩/解压缩
-v 压缩的过程中显示文件(verbose)
-f file 指定文件名,必选项
1, 单独的打包 ,解包tar –cf tar –xf
2 , 打包之后,进行压缩 gzip bzip2
3,一步到位 tar –zcvf tar -zxvf
tar -cf-xf 单独 压缩解压缩
tar-z 以gzip打包目录并压缩 文件格式.tar.gz(.tgz)
tar-j 以bzip2打包目录并压缩 文件格式.tar.bz2
eg:tar -zcvf dir1.tar.gzdir1 使用gzip将目录dir1压缩成一个打包并压缩文件dir1.tar.gz
eg: tar -cvf bak.tar.将当前目录的文件打包为bak.tar
eg: tar -xvf bak.tar 解压
eg: tar -zcvf bak.tar.gzbak.tar 或 gzipbak.tar使用gzip将打包文件bak.tar压缩为bak.tar.gz
eg: tar -jcvf bak.tar.bz2bak.tar或 bzip2 bak.tar 使用bzip2将打包文件bak.tar压缩为bak.tar.bz2
eg: tar -rvf bak.tar /etc/password 将/etc/password追加文件到bak.tar中(r)
eg:tar -cjvf test.tar.bz2test生成test.tar.bz2的压缩文件
eg:tar -xjf test.tar.bz2解压
最常用:targzip
tar –zcvf 压缩
tar –zxvf 解压
补充:
1,文件路径,压缩包带文件路径
2,源文件是保留的 , 不会被删除
**shutdown**[选项] 时间
选项: -c: 取消前一个关机命令
-h:关机
-r:重启
eg:
shutdown -hnow立即关机 shutdown-h20:30 定时关机
其他关机命令 haltpoweroffinit 0
其他重启命令
**reboot**重启系统 reboot -h now立即重启
init 6
注意:生产环境中,关机命令和重启命令谨慎执行 。
善于查看man help等帮助文档
利用好Tab键自动补全
掌握好一些快捷键
ctrlc(停止当前进程)
ctrlz挂起当前进程,放后台
ctrlr(查看命令历史) history
ctrll(清屏,与clear命令作用相同)
【Linux填0命令 linux常用命令写入】 方向箭头上 下 可以查看执行过的命令
ctrla 行首 ctrle 行尾
ctrlk 清除 ctrlw 清除单词
vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大 。
只有命令 , 没有菜单 。
《大碗》编辑器版
周围的同事不是用VI就是Emacs,你要是用UltraEdit都不好意思跟人家打招呼...什么插件呀、语法高亮呀、拼写检查呀,能给它开的都给它开着,就是一个字:酷!你说这么牛X的一东西,怎么着学会也得小半年吧 。半年?。咳朊哦荚蹲拍兀∧苎Щ嵋贫獗昃筒淮砹?,你还别说耗不起,就这还是左右移动?。。?
:
[图片上传失败...(image-a08366-1624438708894)]
命令模式:又称一般模式
编辑模式:又称底行模式,命令行模式
|
命令
|
作用
|
|
a
|
在光标后附加文本
|
|
A(shifta)
|
在本行行末附加文本行尾
|
|
i
|
在光标前插入文本
|
|
I(shift i)
|
在本行开始插入文本 行首
|
|
o
|
在光标下插入新行
|
|
O(shift o)
|
在光标上插入新行
|
|
命令
|
作用
|
|
:set nu
|
设置行号
|
|
:set nonu
|
取消行号
|
|
gg
G
|
到第一行
到最后一行
|
|
nG
|
到第n行
|
|
:n
|
到第n行
|
|
命令
|
作用
|
|
:w
|
保存修改
|
|
:w new_filename
|
另存为指定文件
|
|
:wa.txt
|
内容追加到a.txt文件中 文件需存在
|
|
:wq
|
保存修改并退出
|
|
shift zz(ZZ)
|
快捷键,保存修改并退出
|
|
:q!
|
不保存修改退出
|
|
:wq!
|
保存修改并退出(文件所有者可忽略文件的只读属性)
|
不保存并退出:
1,有修改 , 但是修改后的内容是不保存的
2,有突发情况 , 导致窗口退出 。修改文件之后,直接删除同名的.swp文件
|
命令
|
作用
|
|
x
|
删除光标所在处字符 nx 删除光标所在处后n个字符
|
|
dd
|
删除光标所在行,ndd删除n行
|
|
:n1,n2d
|
删除指定范围的行(eg :1,3d 删除了123这三行)
|
|
dG
|
删除光标所在行到末尾的内容
|
|
D
|
删除从光标所在处到行尾
|
|
命令
|
作用
|
|
yy、Y
|
复制当前行
|
|
nyy、nY
|
复制当前行以下n行
|
|
dd
|
剪切当前行
|
|
ndd
|
剪切当前行以下n行
|
|
p、P
|
粘贴在当前光标所在行下或行上
|
|
命令
|
作用
|
|
r
|
取代光标所在处字符
|
|
R(shiftr)
|
从光标所在处开始替换字符,按Esc结束
|
|
u
|
undo,取消上一步操作
|
|
ctrl r
|
redo,返回到undo之前
|
|
命令
|
作用
|
|
/string
|
向后搜索指定字符串 搜索时忽略大小写 :set ic
|
|
?string
|
向前搜索指定字符串
|
|
n
|
搜索字符串的下一个出现位置,与搜索顺序相同
|
|
N(Shiftn)
|
搜索字符串的上一个出现位置,与搜索顺序相反
|
|
:%s/old/new/g
|
全文替换指定字符串
|
|
:n1,n2s/old/new/g
|
在一定范围内替换指定字符串
|
% 指全文,s 指开始,g 指全局替换
eg: :41,44/yang/lee/c 从41行到44行,把yang替换为lee,询问是否替换
eg: :41,44/yang/lee/g 同上,不询问,直接替换
使用替换命令来添加删除注释
:% s/^/#/g 来在全部内容的行首添加 # 号注释
:1,10 s/^/#/g 在1~10 行首添加 # 号注释
vi里面怎么查命令??
:!which cp
vi里面怎么导入命令的结果?
:r !which cp
v可视字符模式
V****(shift v)可视行模式,选择多行操作
**ctrl v **可视块模式(列模式),操作列
I或者O进入插入模式 。
1,图形化界面
2,setup 命令虚拟界面
3,修改配置文件(以网络方式为NAT示例)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.2.129
NETMASK=255.255.255.0
GATEWAY=192.168.2. 2#网段2任意 , IP地址2固定,网段为vmnet8的设置的IP网段
DNS1=114.114.114.114
DNS2=8.8.8.8
重启网络生效:
service network restart
命令路径:/bin/ping 执行权限:所有用户
作用:测试网络的连通性
语法:ping 选项 IP地址
-c 指定发送次数
ping 命令使用的是icmp协议,不占用端口
eg: # ping -c 3 127.0.0.1
英文:interface configure 命令路径:/sbin/ifconfig 执行权限:root
作用:查看和设置网卡网络配置
语法:ifconfig [-a] [网卡设备标识]
-a:显示所有网卡信息
ifconfig [网卡设备标识] IP地址修改ip地址
英文:network statistics 命令路径:/bin/netstat 执行权限:所有用户
作用:主要用于检测主机的网络配置和状况
-aall显示所有连接和监听端口
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 使用数字方式显示地址和端口号
-l (listening) 显示监控中的服务器的socket
eg:# netstat -tlnu查看本机监听的端口
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
协议 待收数据包待发送数据包 本地ip地址:端口 远程IP地址:端口
netstat –antpl
临时生效:
hostname 主机名
[图片上传失败...(image-ceed36-1624438708893)]
永久生效:修改配置文件
vi /etc/sysconfig/network
[图片上传失败...(image-2b9d9e-1624438708893)]
修改主机名和ip地址之间的映射关系
vi /etc/hosts
192.168.2.120 node-1.edu.cn node-1
可配置别名
[图片上传失败...(image-ec86cf-1624438708893)]
进程和程序的区别:
1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期 , 是动态产生和消亡的 。
2、程序和进程无一一对应关系 。一个程序可以由多个进程共用;另一方面,一个进程在活动中有可顺序地执行若干个程序 。
进程和线程的区别:
进程: 就是正在执行的程序或命令 , 每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源 。
线程: 轻量级的进程;进程有独立的地址空间,线程没有;线程不能独立存在,它由进程创建;相对讲,线程耗费的cpu和内存要小于进程 。
进程管理的作用?
判断服务器的健康状态
查看系统所有的进程
杀死进程
作用:查看系统中的进程信息
语法:ps [-auxle]
常用选项
查看系统中所有进程
ps应用实例 # ps -u or ps -l查看隶属于自己进程详细信息
作用: 查看当前进程树
语法:pstree [选项]
-p 显示进程PID
-u 显示进程的所属用户
作用:查看系统健康状态
显示当前系统中耗费资源最多的进程,以及系统的一些负载情况 。
语法:top [选项]
-d 秒数,指定几秒刷新一次 , 默认3秒(动态显示)
作用:关闭进程
语法:kill [-选项] pId
kill -9 进程号(强行关闭) 常用
kill -1 进程号(重启进程)
添加用户
语法:useradd [选项] 用户名
修改密码命令
语法:passwd [选项] [用户名]
用户密码:生产环境中,用户密码长度8位以上,设置大小写加数字加特殊字符 , 要定期更换密码 。
ys^h_L9t
删除用户
-r 删除账号时同时删除宿主目录(remove)
作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息 。看剩余空间
语法:df [-hkam] [挂载点]
-h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等 -k以KB 为单位显示各分区的信息,默认
-M 以MB为单位显示信息 -a显示所有分区包括大小为0 的分区
作用:用于查看文件或目录的大?。ù排淌褂每占洌?
语法:du [-abhs] [文件名目录]
-a 显示子文件的大小
-h以易读的方式显示 KB,MB,GB等
-s summarize 统计总占有量
eg:
du -a(all) /home显示/home 目录下每个子文件的大小,默认单位为kb
du -b /home以bytes为单位显示/home 目录下各个子目录的大小
du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小
du -sh /home以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize
df命令和du命令的区别:
df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间 。
du命令面向文件,只计算文件或目录占用的空间 。
作用:查看内存及交换空间使用状态
语法: free [-kmg]
选项:
-k:以KB为单位显示,默认就是以KB为单位显示
-m:以MB为单位显示
-g:以GB为单位显示
清理缓存命令:
echo 1/proc/sys/vm/drop_caches
关于Linux填0命令和linux常用命令写入的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读