Linux 常用操作命令

解压命令

  我们知道,在windows环境下,常见的压缩包格式有:*.rar,*.zip,*.7z等,与之对应的,在Linux操作环境下,也有自己的专属压缩包格式:以*.gz作为后缀名;

  另外, 在Linux下,解压只能通过命令来完成,解压命令如下:

tar -zxvf 待解压的包名全称(带后缀名)

  说明:解压,需要先切换到*.gz文件所在目录才行。

目录命令

  关于切换目录的命令与windows黑窗口下完全一致;

网络命令

  与windows一致,常用的就是:ping和telnet

发送HTTP请求

  get请求

  curl命令默认下就是使用get方式发送http请求;

curl www.baidu.com

  说明:curl也可以用来测试网络是否可以正常访问,与telnet效果相同。

  想传参的话直接在后面加参数就行了

curl www.baidu.com?name=marydon&password=123  

  post请求

  使用-d参数(form表单请求),形式如下:

curl -d   "param1=value1¶m2=value2" http://www.baidu.com

  或者

curl http://www.baidu.com -d  "param1=value1&param2=value2" 

  

  json请求,形式如下: 

curl -i -k  -H  "Content-type: application/json" -X POST -d  '{"name":"marydon","text":"12345678"}' http://39.156.66.18:8080/sign

说明:

请求地址:URL,可以使用双引号或者单引号将请求地址包起来,也可以不包;

请求地址和请求参数的顺序可以调换,谁在前面都没有影响。

操作MySQL数据库

  登录

mysql -h 服务器 -u 用户名 -p密码

  选择数据库实例

use 数据库名称

  执行SQL

select *    from table_name limit 1;

  执行结果将会被打印出来  

  将SQL执行结果导出:

mysql -h ip -u loginName -ploginPassword -Pport -e "sql语句" > /目录/test.txt

  退出MySQL服务器

  退出命令:\q

tomcat命令

  启动命令

  如果仅仅是启动的话,很简单;

  首先,我们需要切换到tomcat_home/bing目录下,执行以下命令即可。

./startup.sh

  但是,这样虽然能启动,我们却无法看到日志信息。

  打印日志命令

  tail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。

  tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容。

tailf ../logs/catalina.out

  这是通过两步才完成,能不能合并成一步呢?

  方式一:

./startup.sh; tailf ../logs/catalina.out

  方式二:

./startup.sh && tail -f ../logs/catalina.out

2022年9月20日19:26:43

也可以先启动tomcat

再回退上一级

cd ..

 

再进入logs目录

cd logs

 

 最后,再输出日志

tail -f catalina.out

  关闭tomcat    

  同样地,需要切换到tomcat的bin目录下,运行:

./shutdow.sh

2022年9月20日19:20:42

如果提示权限不足

使用此命令:

chmod u+x *.sh

退出正在执行的命令  

  快捷键:Ctrl+c/Ctrl+Shift+C

或者,输入命令:esc,再按回车键

如果命令输入错误,我们同样可以按Ctrl+c退出当前行

重启网络

systemctl restart network

配置dns

echo nameserver 域名 > /etc/resolv.conf

 

  这样,会把百度写入resolv.conf文件中,但需要注意的是:即使插入成功,也并不意味着一定就能访问该域名。 

技巧:与windows一样,可以使用方向键,上翻所录入的命令历史记录。

2021-07-10

查看历史命令记录

history

  会罗列出所有历史命令记录

 

  另外,当我们不想输入重复的命令时,可以使用方向键向上(↑) 、向下(⭣),找到想要的命令,并按回车即可执行。

2021年9月8日09:58:03

查看系统当前时间

查看日期和时间

date

查看系统时间详情

timedatectl

修改系统当前时间

修改时分秒

如果linu服务期不连互联网的话,就会造成服务器时间比互联网时间(真正时间)滞后的问题。

如果没有时间服务器来自动同步的话,我们只能隔一段时间手动修改linux的时间。

具体操作如下:

date -s HH:mm:ss

说明:小时需要使用24小时制。

修改日期和时间

timedatectl set-time "yyyy-MM-dd HH:mm:ss"

如果执行后,提示上述内容,就表示:已开启时间自动同步。

我们只能使用上面的date -s修改时分秒。

设定系统时间计算方式

0表示使用utc时间计算方式;1表示使用local时间计算方式。

timedatectl set -local-rtc 0
timedatectl set -local-rtc 1

查看系统所在时区

查看系统当前时区

date -R  

+0800,表示东八区;

-0800,表示西八区。

显示系统的所有时区

timedatectl list-timezones

修改系统所用时区

timedatectl set-timezone "Asia/Shanghai"

跳转目录

说明:cd命令必须是小写,如果用大写的话,无法识别。

跳转到根目录下

cd /

跳转到指定目录下(当前目录与跳转目录不在同一个父级目录下)

当前目录与跳转目录不在同一个父级目录下时,需要使用绝对路径。

跳转到下级目录

要跳转目录在当前目录的下面(子目录或者子孙目录)

跳转到上级目录

要跳转目录在当前目录的下面(父级目录或者祖父级目录)

另外,如果使用Xftp的话,按退格键Backspace,可以退到上级目录。

连续按退格键,可以一直退到根目录下。(根目录为:/)

查看文件内容

tail 文件名.后缀名:查看指定文件最后10行内容。

cat 文件名.后缀名:查看指定文件的所有内容。

关于文件路径的说明

如果,我们要运行的文件在当前命令所在的目录里面,我们需要可以使用相对路径。

如上图所示,connect-standalone.sh文件在kafka/bin目录下,connect-standalone.properties文件在kafka/config目录下。

由于当前要执行的命令所在的目录为kafka,所以,启动sh文件所需的配置文件使用相对路径就可以了。

当我们要运行的文件不在当前命令所在的目录里面,我们需要可以使用绝对路径。

创建文件并输入内容

echo -e "connector\ntest" > test.txt

将connector\ntest重写到test.txt文件当中,如果test.txt不存在就会被自动创建(原文件内容会被覆盖)。 

如果不带参数"-e"。

清空文件

往文件后面追加内容

说明:

一个>:原文件内容将被覆盖。

两个>:会在原文件内容基础之上,追加内容。

关于linux命令的说明

查找以固定字母开头的linux命令

当我们忘记命令的时候,我们可以使用关键词来检索命令全称。

比方说:我想使用以“n”开头的命令,但是,不记得是那个命令了,或者,想要查看以“n”开头的命令,都有什么?

输入:n,然后,按两次Tab键。

会出现上面这个提示,是否展示102种可能(意思是:以n开头的linux命令一共有102种)。

输入y后,将会将所有以“n”开头的命令罗列出来。

输入:no,连按两次Tab键,将会出现所有以“no”开头的命令。

查看指定命令的用法

命令 --help

以nohup为例

命令自动补全

比如,我想要输入:nohup,但不想手动写全,那我们就可以输入:noh,然后按Tab键就会自动补全。

输入not,再按Tab

文件目录自动补全

当我们要输入的命令为当前操作目录下的文件目录时,如果文件夹具有唯一性,可以按Tab建进行文件夹的补全操作。

当我想要输入:kafka-log目录时,除了手动写全外,还可以使用自动补全操作。

输入kafka,并按Tab键,文件目录会被自动补全。

文件名自动补全

下面进行举例说明:

如上图所示,比方说,我们想要查看nohup.out文件内容时,我们可以在输入:tail -f no之后再按Tab键即可。

按指定名称检索进程是否存在(正在运行)

ps -ef |grep 要搜索的内容

详细解说:

ps命令将某个进程显示出来

grep命令是查找

中间的|是管道命令 是指ps命令与grep同时执行

PS是LINUX下最常用的也是非常强大的进程查看命令

grep命令是查找,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

UID      :程序被该 UID 所拥有

PID      :就是这个程序的 ID 

PPID    :则是其上级父程序的ID

C          :CPU使用的资源百分比

STIME :系统启动时间

TTY     :登入者的终端机位置

TIME   :使用掉的CPU时间。

CMD   :所下达的是什么指令,如果cmd的命令太长,我们可以通过最后一行执行的内容来查看。

通过最终执行的内容来判断是哪个程序。

查看指定端口被谁占用(根据端口号查询对应的PID和进程名称)

netstat -nltp |grep 端口号

-n: 显示数字格式的地址和端口号,而不是尝试解析主机名、服务名等。

-l: 仅显示监听(listening)的套接字。

-t: 显示 TCP 连接。

-p: 显示每个连接的进程 ID 和程序名称。

因此,netstat -nltp 主要用于显示系统上所有正在监听的 TCP 端口以及它们对应的进程信息。这对于查找哪个进程正在使用特定的端口非常有用。

如果没有输出内容,就说明端口没有启用。

netstat -natp |grep 端口号

-n: 显示数字格式的地址和端口号,而不是尝试解析主机名、服务名等。

-a: 显示所有活动的网络连接和监听的套接字。

-t: 显示 TCP 连接。

-p: 显示每个连接的进程 ID 和程序名称。

因此,netstat -nltp 主要用于显示系统上所有正在监听的 TCP 端口以及它们对应的进程信息。这对于查找哪个进程正在使用特定的端口非常有用。

如果没有输出内容,就说明端口没有启用。

根据进程PID查看相关进程信息

netstat -natp|grep PID

netstat -natp:
netstat:显示网络连接、路由表、接口统计等网络相关信息。
-n:显示数字格式的地址和端口号,不进行DNS解析。
-a:显示所有活动的网络连接和监听的套接字。
-t:显示TCP连接。
-p:显示每个连接的进程ID和程序名称。
这个命令会列出系统上所有活动的TCP连接以及与之关联的进程信息。

grep 23358:
grep:文本搜索工具,用于搜索包含特定模式的行。
23358:这是要搜索的模式,即进程ID。
grep 23358会从上一步netstat -natp的输出中筛选出包含“23358”的行。

根据进程PID查询网络连接数

netstat -natp|grep PID|wc -l

wc -l:
wc:计算文件中的行数、字数和字节数。
-l:仅计算行数。
wc -l会计算上一步grep命令的输出行数,从而得知与进程ID 23358相关的TCP连接数量。

 

根据进程PID查看所执行的命令

如上图所示,当我查看9092端口被谁占用时,得到的答案是:java。

公司测试服务器上启动的java程序那么多,我该如何知道是哪个java程序在使用9092端口呢?

ps -ef|grep PID

 如上图所示,我们根据进程PID,就能检索到是哪个命令开启了该进程。

这样我们就知道到底是谁在占用指定端口了。

根据进程ID杀掉进程

kill PID

强制杀掉进程

kill -9 PID

查看目录下的内容

查看目录下的内容有三种执行方式。

第一种:查看当前目录下的内容。

直接输入:ls,并按Enter键。

第二种:查看当前目录下子目录或子孙目录内容。

ls 当前目录下的子目录或者子孙目录名称

第三种:查看其他目录内容。

ls 要查看的目录内容所在绝对路径

当要查看的其他目录与当前命令所在目录不存在上下级关系时,需要使用绝对路径。

解压文件

解压gz文件

tar -zxvf 文件名.tar.gz

下面是这个命令各部分的解释:

tar: 这是主命令,代表 "Tape ARchive",用于处理归档文件。
-z: 这个选项告诉 tar 命令要处理的文件是一个 gzip 压缩过的文件(即 .gz 扩展名)。
-x: 这个选项告诉 tar 命令要解压文件。
-v: 这个选项是 "verbose" 的缩写,意味着命令在执行时会显示详细的信息,如正在解压的文件名等。
-f: 这个选项后面通常会跟着归档文件的名称,用于指定要处理的文件。
nginx-1.26.0.tar.gz: 这是要解压的归档文件的名称。

当你运行 tar -zxvf nginx-1.26.0.tar.gz 时,系统会解压 nginx-1.26.0.tar.gz 文件,并在当前目录下创建一个新的目录:nginx-1.26.0。 

解压zip文件

说明:在Linux系统中,你可以使用unzip命令来解压.zip格式的压缩文件。如果你还没有安装unzip工具,你可以通过你的包管理器来安装它。

解压.zip文件到当前目录:

unzip filename.zip

解压.zip文件到指定目录:

unzip filename.zip -d /path/to/directory

使用-d选项后面跟上目标目录的路径,可以将文件解压到指定的目录中。

查看.zip文件中的内容而不解压:

unzip -l filename.zip

使用-l选项可以列出.zip文件中的所有文件和目录,而不实际解压它们。

解压.zip文件并覆盖已存在的文件:

unzip -o filename.zip

使用-o选项可以在解压过程中覆盖已存在的文件而不提示。 

2024-06-14 12:22:15

vim模式

使用vim打开文件

vim /etc/profile

按Enter键即可打开指定文件

 输入i可以进入插入(编辑)模式。

这样,我们就可以编辑当前文件了。

保存并退出vim:先按Esc键退出插入模式,再输入:wq,最后按Enter。

不保存并退出vim:先按Esc键,再输入:q!。

如果已经编辑,按Esc,再按:q的话,会有提醒:

如果没有编辑的话,直接输入:q和Enter即可退出vim。

查看机器是64位还是32位

uname -m

如果输出是x86_64,那么你的系统是64位的;

如果输出是i686或i386,那么你的系统是32位的。

查看操作系统信息

cat /etc/os-release

2024-06-25 10:23:09

屏幕来到鼠标光标所在行

在XFtp中,快捷键Ctrl+F。

2024-06-25 17:28:13

清空屏幕内容

clear

 

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

 相关推荐:

posted @ 2020-12-15 17:02  Marydon  阅读(231)  评论(0编辑  收藏  举报