Linux命令

Linux的命令分为两大类

内置命令:Linux内核自带的命令,不需要借助任何的第三方程序。

外置命令:不属于Linux内核的原生命令,需要通过第三方程序独立安装。

绝对和相对路径

绝对路径都是以“/”开头 相对路径不以“/”开头 返回上一级目录../

cd : 变更工作目录(change directory)

pwd : 打印当前工作目录(print working directory)

ls : 展示当前目录下所有的子目录和子文件(list)

ll : 等同于ls -l

创建或删除目录

mkdir : 创建目录(make directory. -p参数表示创建多级目录)

rm 删除目录或文件(remove. -r参数表示递归删除整个目录recursion; -f强制删除-force])

创建、编辑、查看文件

touch : 创建文件

vi : 打开并编辑文件内容(visual)

vim : 打开或编辑文件内容(visual improved), vi命令的增强版本, 需要独立安装

cat : 查看或连接文件 (concatenate)

more : 可以分页查看文件,尤其适合大文件的查看。但是只能向下翻页。空格键进行下翻。

less : 可以上下翻页。进入到文件内存进行阅读。使用键盘[PageDown]和[PageUp]进行下翻和上翻。

拷贝、移动、重命名文件或目录

cp [-r] : 拷贝文件(copy)

mv : 移动文件或目录(move)

解压缩

tar : 打包或解压命令(tape archive) -zxvf解压; -zcvf压缩

-x 提取文件,就是解压缩的意思, 对应extract这个单词

-z表示文件是tar.gz格式。采用gzip进行压缩或者解压缩,gzip是Linux中的压缩工具包

-c表示压缩文件的意思

-v表示压缩或者解压缩过程中显示详细的压缩或者解压缩的过程。对应verbose这个单词

-f表示文件, 对应file这个单词,f必须放在最后,f后面一定要跟文件名称

安装

yum : 基于RPM(Redhat Package Manager, 类似我们windows系统的[添加/删除]的方式来管理Linux上的程序,安装/升级

yellow dog updater, modifier)

查看命令在哪个目录

which 命令名称

查询文件或者查询指定文件中的内容

find [name] : 查找在指定目录下的文件名称,查询包括子文件夹中的内容 grep [查询的内容] [指定的文件]

管道命令

多个命令的一个组合 比如:ps -ef | grep tomcat 通过进程名tomcat查找进程

权限简介和授权

例如:drwxr-xr-x. 2 root root 4096 May 25 23:27 bin

d: 代表文件夹 (directory);r: 可读 (read) ;w: 可写 (write) ;x: 可执行 (execute)

第一个drwxr:表示当前文件或目录的所有者拥有的权限;

第二个xr:代表当前文件或目录的所有者同组用户所拥有的权限;

第三个x:代表不同组的其他用户对当前文件拥有的权限 chmod 744 文件名称 (change mode)

r: 4 w: 2 x: 1

yum和rpm

RPM 是Red-Hat Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了。

rpm命令管理

-ivh      包全名          安装
-Uvh      包全名          升级
rpm -e     包名            卸载
rpm -q     包名            查询
rpm -qa    包名            查询
rpm -qi    包名            查询信息
rpm -qip   包全名          查询未安装包
rpm -ql    包名            查询安装位置
rpm -qlp   包全名          查询呢未安装包信息
rpm -qf    系统文件名      根据文件名查询属于哪个包
rpm -qR    包名            查询软件包的依赖性
rpm -qRp   包全名          查询未安装包信息
安装rpm1的时候,需要先安装rpm2和rpm3,但是安装rpm2需要先安装rpm3。难点:不知道先要安装谁

Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

查看当前IP

hostname -I:查看当前IP(只显示IP)

ifconfig:查看本机当前网络(IP,MTU最大传送单元,子网掩码,广播地址,蓝牙地址,最近数据包相关信息....)

ip addr show | grep 'inet'(IP,广播地址)

查看进程PID,端口

1.进程查PID

ps -ef | grep 进程名(ps -ef | grep tomcat,xxx.jar)

ps aux | grep 进程名

2.根据PID查端口

netstat -nap | grep 进程pid

3.根据端口查PID

[sudo] netstat -auntpl|grep 8080

[sudo] netstat -antup|grep PID号

4.根据PID查进程名

ps -ef|grep 13218

查看当前系统下所运行的所有端口情况(需要在sudo的权限下查看,不然有部分的pid是查看不到的)

sudo netstat -auntpl

sudo netstat -antup

kill -9 pid:杀死进程

重启,关机

关机

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命令取消重启

注销命令

1、logout
2、exit      #工作中常用
3、ctrl+d     #工作中常用
注销表示退出当前用户登录

vim

gg:vim中回到第一行

/关键字:vim中查找出现多个结果,使用 n字符切换到下一个即可,查找到结果后输入:noh退回到正常模式

./<可执行程序>

表示运行该程序

比如有可执行程序,名叫print_name,

./print_name表示运行该程序

防火墙

查看防火墙状态

firewall-cmd --state

停止/启动firewall

systemctl stop/start firewalld.service

禁止firewall开机启动

systemctl disable firewalld.service

单独开启、关闭某个端口步骤:

1、输入命令查看防火墙的状态;

firewall-cmd --state

2、如果上一步处于关闭状态,输入命令:

systemctl start firewalld.service

3、开启/关闭8080端口,输入命令:

firewall-cmd --zone=public --add/remove-port=8080/tcp --permanent

解释一下上一个命令:

--zone=public:表示作用域为公共的;

--add-port=8080/tcp:添加tcp协议的端口8080;

--permanent:永久生效,如果没有此参数,则只能维持当前服务生命周期内,重新启动后失效;

4、输入命令重启防火墙;

systemctl restart firewalld.service

5、输入命令重新载入配置;

firewall-cmd --reload

java -jar

java -jar xxx.jar

​ 表示在当前ssh窗口,可按CTRL + C打断程序运行,或者直接关闭窗口,则程序直接退出。

java -jar xxx.jar &

​ 表示在当窗口关闭时,程序才会中止运行。&代表让该命令在后台执行。

nohup java -jar XXX.jar &

​ 表示不挂断运行命令,当账户退出或终端关闭时,程序仍然运行。注意,该作业的所有输出被重定向到nohup.out的文件中。

nohup java -jar XXX.jar > Log.log &

​ ......并且该作业的所有输出被重定向到Log.log的文件中。“ > Log.log ” 指定日志输出的文件。

nohup java -jar XXX.jar >> Log.log &

​ ......">>"表示将输出以追加的方式重定向到Log.log中。

nohup java -jar XXX.jar > Log.log 2>&1 &

nohup java -jar XXX.jar >> Log.log 2>&1 &

nohup java -jar XXX.jar > /dev/null 2>&1 &

  • 标准输入文件(stdin):stdin的文件描述符为0,Unix程序默认从stdin读取数据。
  • 标准输出文件(stdout):stdout 的文件描述符为1,Unix程序默认向stdout输出数据。
  • 标准错误文件(stderr):stderr的文件描述符为2,Unix程序会向stderr流中写入错误信息。
  • 屏蔽输出,起到禁止输出作用:/dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到"禁止输出"的效果。
  • “> Log.log 2>&1” :表示将 stdout 和 stderr 合并后重定向到 Log.log

备注:输出之后,可以使用“jobs”查看一下后台运行的任务。

原文地址:https://www.cnblogs.com/oumae/p/14415012.html