linux命令集

linux命令集

1 cd命令集

ifconfig/ip addr 检查IP地址

pwd 检查当前的位置

tab键 自动补齐(注意唯一性)

cd命令是linux中最基本的命令语句,必须熟练掌握

cd / 返回根目录

cd ~ 用户主目录

cd . 当前目录

cd …返回到上一级目录

cd /usr/ 进入到usr目录

cd – 返回上一个目录

cd 直接回家

2 目录和文件

ll 详细文件信息

ls 简略文件信息

ls –l 详细格式,文件权限,时间

ll 和ls –l作用相同

ls *.txt 查看所有的txt类型文档

3 目录操作

mkdir 创建目录

mkdir a 创建 a目录

mkdir -p a/b 创建 a目录,并在a目录里创建b目录

mkdir -m 777 c 创建一个权限为777的C目录

rmdir 删除目录(如果目录里有文件,则不能用此命令)

4 创建/查看/编辑文件

命令行:Esc切换到命令行模式。

命令行模式:

按i,在光标前开始编辑

按a,在光标后开始编辑

按o,在当前行的下一行开始编辑

按u, 撤销之前的操作

底行模式:

按 shift+:冒号。

: nu 显示行号

:q! 不保存退出

:wq 保存退出

:/world 从当前光标处,向上查找world关键字

:?world 从当前光标处,向后查找world关键字

5 删除文件

rm 删除文件

rm n.txt 有提示y删除n放弃

rm –f n.txt 不提示

rm -r n 递归删除目录下所以内容

rm –rf dirname 不提示递归删除目录下所以内容

rm –rf * 删除所有文件

rm –rf /* 删除所有子目录所有和文件

6 复制文件

cp 复制文件

cp nginx.conf n.txt

cp –R tomcat1 tomcat2 #复制整个目录

6.1 移动文件和修改文件名

mv 修改文件名,移动文件

mv n.txt m.txt 修改文件名称

mv nginx-1.15.10 nginx 移动文件nginx-1.15.10到nginx中

7 浏览文件

cat 输出文件所有的内容

more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出。

less 用法和more相同,只是通过PgUp、PgOn键来控制翻页。

tail 用于显示文件后几号,使用频繁

head 查看文件前几页

tail -10 nginx.conf 查看nginx.conf的最后10行

tail –f nginx.conf 动态查看日志,方便查看日志新增的信息

ctrl+c 结束查看

8 打包 压缩命令

tar命令位于/bin目录下,它能够将用户所指定的文件或目录打包成一个文件,但不做压缩。

一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成name.tar.gz的文件。

-c 创建一个新的tar文件

-v 显示运行过程的信息

-f 指定文件名

-z 调用gzip压缩命令进行压缩

-t 查看压缩文件的内容

-x 解开tar文件

tar –cvf n.tar ./*

压缩当前目录下的所有文件和目录,文件名为n.tar

tar –xvf n.tar

解压压缩包中的文件到当前目录(如果长时间未解压成功 Ctrl+C推出)

tar –czvf m.tar.gz ./*

压缩文件:创建新文件,再压缩,文件名为m.tar

tar -zxvf m.tar.gz

解压文件:解开文件,解压m.tar文件到当前目录

9 grep命令

grep root /etc/passwd 在文件中查找关键字root

grep root /etc/passwd –-color 高亮显示

grep root /etc/passwd –A5 –B5 高亮显示,A后5行,B前5行

grep -n root /etc/passwd 查找并显示行数

grep -v root /etc/passwd 取反,查出不含root的数据

10 ps命令

显示所有进程信息 ps -A

显示指定用户信息 ps -u root

显示所有进程信息,连同命令行 ps -ef

ps 与grep 常用组合用法,查找特定进程 ps -ef | grep 进程名

11 linux脚本命令

写一个linux的脚本文件

vim startServers.sh 写脚本文件

#!/bin/sh 必须是写在第一行

#!符号能够被内核识别成是一个脚本的开始,这一行必须位于脚本的首行,/bin/bash是bash程序的绝对路径,在这里表示后续的内容将通过bash程序解释执行。

sh startServers.sh 启动脚本文件

12 重启Linux虚拟机网卡

命令: ip addr

如果没有显示IP,则

cd /etc/sysconfig/network-scripts/ //进入到network-scripts目录下

vi ifcfg-ens32 //编辑配置文件

onboot=yes //开启自动启用网络连接,完成后重启linux系统

service NetworkManager stop 暂时关闭manager网卡

chkconfig NetworkManager off 永久关闭 Manager网卡

service network restart 重启network网卡

13 防火墙命令

systemctl start firewalld 开启防火墙

systemctl stop firewalld 关闭防火墙

systemctl status firewalld 查看防火墙状态

systemctl enable firewalld.service 设置开机启动

systemctl disable firewalld.service 禁用开机启动

firewall-cmd --reload 重启防火墙

firewall-cmd --list-all 检查防火墙开放的端口

firewall-cmd --list-ports 检查防火墙开放的端口

firewall-cmd --query-port=80/tcp 检查端口是否开放

firewall-cmd --zone=public --add-port=80/tcp --permanent 添加端口(修改后需要重启防火墙方可生效)

firewall-cmd --zone=public --remove-port=9090/tcp --permanent 关闭端口

关于防火墙操作的解释

–zone #作用域

–add-port=80/tcp #添加端口,格式为:端口/通讯协议

–remove-port=80/tcp #移除端口,格式为:端口/通讯协议

–permanent #永久生效,没有此参数重启后失效

14 redis命令

1.启动命令: redis-server redis.conf
2.检索命令: ps -ef | grep redis
3.进入客户端: redis-cli -p 6379
4.关闭redis: kill -9 PID号 或者 redis-cli -p 6379 shutdown

15 rabbitMQ命令

firewall-cmd --zone=public --add-port=15672/tcp --permanent

firewall-cmd --reload 打开 15672 管理端口,并重启防火墙

systemctl enable rabbitmq-server 设置服务,开机自动启动

systemctl start rabbitmq-server 启动服务

systemctl restart rabbitmq-server 重启RabbitMQ服务

rabbitmqctl add_user admin admin 添加用户

rabbitmqctl set_user_tags admin administrator 设置用户为超级管理员

rabbitmq-plugins enable rabbitmq_management 开启管理界面插件

从0安装centos

关闭selinux

  1. Set-enforce执行命令:

setenforce 0

  1. 检查配置文件/etc/selinux/config

SELINUX=disabled。

配置网络环境

命令: ip addr

如果没有显示IP,则

cd /etc/sysconfig/network-scripts/ //进入到network-scripts目录下

vi ifcfg-ens32 //编辑配置文件

onboot=yes //开启自动启用网络连接,完成后重启linux系统

lsblk 查看是否有磁盘需要挂载

检查ssh服务

systemctl status sshd 默认开启

linux常用软件包

net-tools

vim             #vim 编辑器

lrzsz #上传工具

gcc gcc-c++       #C语言编译器,很多包的编译依赖

wget(被curl代替)

yum换源(可以不换)

# CentOS 7

#第一步:备份你的原镜像文件,以免出错后可以恢复。

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

#第二步:下载新的CentOS-Base.repo 到/etc/yum.repos.d/

curl -o /etc/yum.repos.d/CentOS-Base-aliyun.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo

curl -o /etc/yum.repos.d/CentOS-Base-aliyun.repo https://mirrors.aliyun.com/repo/Centos-7.repo

# wget -O /etc/yum.repos.d/CentOS-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo

# wget -O /etc/yum.repos.d/CentOS-Base-aliyun.repo http://mirrors.aliyun.com/repo/Centos-7.repo

#第三步:运行yum makecache生成缓存

#清理yum缓存
先 yum clean all,若还是有问题,可以 yum check-update

#将服务器软件包信息缓存至本地
yum makecache


java安装

#安装jdk,配置环境变量
#设定jdk环境 
export JAVA_HOME=/usr/local/src/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH

# CLASSPATH=.:$JAVA_HOME/lib

#刷新环境变量
source /etc/profile

#检测java是否安装成功
java -version

elastic search

elastic search常见错误
  1. error=‘Cannot allocate memory’ 无法分配内存
1.修改sysctl.conf文件
	vim /etc/sysctl.conf

2.修改/添加参数
	vm.overcommit_memory=1

3.使配置文件生效
	sysctl -p 

4.若执行以上步骤还是失败,就要修改es的config目录下的jvm.options
	-Xms512m
	-Xmx512m
5.最好给虚拟机分配2g运存,否则无法运行	
  1. ./elasticsearch后,报错can not run elasticsearch as root

原因:es为了安全不允许使用root用户启动

解决:es5之后的都不能使用添加启动参数或者修改配置文件等方法启动了,必须要创建用户

#1、创建用户:elasticsearch
	adduser elasticsearch
 
#2、创建用户密码,需要输入两次
	passwd elasticsearch

#3、将对应的文件夹权限赋给该用户
	chown -R elasticsearch /usr/local/src/elasticsearch-5.4.0
	chgrp -R elasticsearch /usr/local/src/elasticsearch-5.4.0
#4、切换至elasticsearch用户	
	su elasticsearch

#5、进入启动目录/usr/local/src/elasticsearch-6.0.0/bin启动es 
	./elasticsearch -d

#6、测试:如果返回一个json数据说明启动成功
	curl 127.0.0.1:9200
  1. es 创建账户 elasticsearch 747310145

  2. 启动es时报错

    main ERROR RollingFileManager (/usr/local/src/elasticsearch-5.4.0/logs/elasticsearch.log) java.io.FileNotFoundException: /usr/local/src/elasticsearch-5.4.0/logs/elasticsearch.log (Permission denied) java.io.FileNotFoundException: /usr/local/src/elasticsearch-5.4.0/logs/elasticsearch.log (Permission denied)

#1.运行es,必须切换到之前创建的账户elasticsearch

#2.必须将es文件夹的权限给elasticsearch
	chown -R elasticsearch /usr/local/src/elasticsearch-5.4.0
	chgrp -R elasticsearch /usr/local/src/elasticsearch-5.4.0

安装软件包方法

kali & centos

早期的kali是基于Ubuntu系统,现在的kali基于Debian系统,而Ubuntu是基于Debian系统。

一般来说linux系统主要分为两大类:

​ RedHat系列:RedHat,Centos,Fedora等;用rpm和yum

​ Debian系列:Debian,Ubuntu等;用dpkg和apt

rpm包和deb包对比

deb 包适用于 DebianUbuntu 和其他基于 Debian 的系统,包管理器dpkg只出现在Debina Linux中

rpm 包适合在Red HatCentos,SLES,OpenSuSE和其他基于RPM的系统上安装。

deb包 apt & dpkg

Debian系统的软件是使用apt和dpkg进行管理。

apt(Advanced Packaging Tool)是一个在 Debian 和 Ubuntu 中的 Shell 前端软件包管理器。

apt能在线下载并安装deb包,能更新系统,且还能自动处理包与包之间的依赖问题,这个是dpkg工具所不具备的。

dpkg是"Debian Packager"的简写,是一个底层的软件包管理工具。

dpkg只是用来安装本地软件包(deb包),但不解决模块的依赖关系。

dpkg绕过apt包管理数据库对软件包进行操作,所以你用dpkg安装过的软件包用

apt可以再安装一遍,系统不知道之前安装过了,将会覆盖之前dpkg的安装。

deb包

deb包安装方式步骤:

  1. 找到相应的软件包,比如soft.deb,下载到本机某个目录;
  2. 打开一个终端,su -成root用户;
  3. cd soft.version.deb所在的目录;
  4. 输入dpkg -i soft.deb

1. 安装

dpkg –i deb的软件包名
如:dpkg –i software-1.2.3-1.deb

2. 卸载

dpkg –e 软件名
如:dpkg –e software

3.查询:查询当前系统安装的软件包:

dpkg –l 软件包名
如:dpkg –l software

dpkg相关指令

dpkg -i package.deb   		#安装包
dpkg -r package     		#删除包
dpkg -P package     	#删除包(包括配置文件)
dpkg -L package     	#列出与该包关联的文件
dpkg -l package     	#显示该包的版本
dpkg --unpack package.deb 	#解开deb包的内容
dpkg -S keyword      	#搜索所属的包内容
dpkg -l          			#列出当前已安装的包
dpkg -c package.deb    		#列出deb包的内容
dpkg --configure package  #配置包

apt相关指令

apt方式安装:(安装deb包)

  1. 打开一个终端,sudo su root 成root用户;
  2. apt-cache search soft 注:soft是你要找的软件的名称或相关信息
  3. 如果2中找到了软件soft.version,则用apt-get install soft.version命令安装软件

例如:ubuntu 系统安装vim:sudo apt-get install vim-gtk

apt update
	列出所有可更新的软件清单
apt upgrade
	升级所有的软件包
apt install package_name1 package_name2
	安装一个新软件包(参见下文的aptitude)
apt update <package_name>
	更新指定的软件
apt show <package_name>	
	显示软件包具体信息
apt remove packagename
	卸载一个已安装的软件包(保留配置文件)
apt --purge remove packagename
	卸载一个已安装的软件包(删除配置文件)
dpkg --force-all --purge packagename
	有些软件很难卸载,而且还阻止了别的软件的应用,就可以用这个,不过有点冒险。
apt autoremove
	因为apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件。
apt autoclean
	定期运行这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,可以释放大量的磁盘空间。如果需求十分迫切,可以使用apt clean以释放更多空间。这个命令会将已安装软件包裹的.deb文件一并删除。
apt clean
	这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的。
apt upgrade
	更新所有已安装的软件包
apt dist-upgrade
	将系统升级到新版本
apt-cache search string
	在软件包列表中搜索字符串
apt-cache showpkg pkgs
	显示软件包信息。
apt-cache stats
	查看库里有多少软件
apt-cache dumpavail
	打印可用软件包列表。
apt-cache show pkgs
	显示软件包记录,类似于dpkg –print-avail。
apt-cache pkgnames
	打印软件包列表中所有软件包的名称

rpm包 rpm & yum

rpm(英文全拼:redhat package manager)

rpm包安装方式步骤:

  1. 找到相应的软件包,比如soft.version.rpm,下载到本机某个目录;
  2. 打开一个终端,su -成root用户;
  3. cd soft.version.rpm所在的目录;
  4. 输入rpm -ivh soft.version.rpm

安装:

rpm 是linux的一种软件包名称,以.rmp结尾,安装的时候语法为:rpm -ivh。

安装方式: rpm –ivh rpm的软件包名
更高级的,请见下表:
rpm参数 参数说明
-i 显示软件相关信息
-t 测试安装,不是真的安装
-p 显示安装进度
-f 忽略任何错误
-U 升级安装
-v 检测套件是否正确安装
这些参数可以同时采用。更多的内容可以参考RPM的命令帮助。

卸载:

rpm –e 软件名
不过要注意的是,后面使用的是软件名,而不是软件包名。

例如,要安装software-1.2.3-1.i386.rpm这个包时,应执行:
rpm –ivh software-1.2.3-1.i386.rpm

而当卸载时,则应执行:
rpm –e software。

查询rpm包

rpm -qa | grep software

yum

yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。

基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

yum方式安装

rpm包的安装有个很大的缺点就是文件的关联性太大,有时装一个软件要安装很多其他的软件包,很麻烦。
所以为此RedHat开发了yum安装方法,他可以彻底解决这个关联性的问题,很方便,只要配置两个文件即可安装,安装方法是:yum -y install 。

简单的说: rpm 只能安装已经下载到本地机器上的rpm 包. yum能在线下载并安装rpm包,能更新系统,
且还能自动处理包与包之间的依赖问题,这个是rpm 工具所不具备的。

安装:yum -y install

卸载:yum remove 包名

yum check-update	 列出所有可更新的软件清单
yum update 			更新所有软件
yum install <package_name> 安装指定的软件
yum update <package_name>  更新指定的软件
yum list 			列出所有可安裝的软件
yum remove <package_name>	删除软件包
yum search <keyword>	查找软件包命令
yum clean packages		清除缓存目录下的软件包
yum clean headers 		清除缓存目录下的 headers

RPM转DEB的方法

  1. 先安装 alien 和 fakeroot 这两个工具,其中前者可以将 rpm 包转换为 deb 包。安装命令为:
    sudo apt-get install alien fakeroot
  2. 将需要安装的 rpm 包下载备用,假设为 package.rpm。
  3. 使用 alien 将 rpm 包转换为 deb 包:
    fakeroot alien package.rpm
  4. 一旦转换成功,我们可以即刻使用以下指令来安装:
    sudo dpkg -i package.deb

dpkg无法执行安装的解决方法

问题描述

dpkg: warning: 'ldconfig' not found in PATH or not executable
dpkg: warning: 'start-stop-daemon' not found in PATH or not executable
dpkg: error: 2 expected programs not found in PATH or not executable
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin
E: Sub-process /usr/bin/dpkg returned an error code (2)

解决方法

出现上面的错误一般是没有配置好环境变量

1.修改文件 
	vim /root/.bashrc
	export PATH=/sbin:/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
2.重置系统变量
	source /root/.bashrc

其他命令

curl(替代wget)

在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具

lsof

lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,因此通过lsof工具能够查看这个列表对系统监测以及排错将是很有帮助的。

su & sudo

su

Linux su(英文全拼:swith user)命令

用于切换用户身份,除 root 外,需要键入该使用者的密码。

whoami		#显示当前用户
pwd 		#显示当前目录
su root 	#切换到root用户
su 			#切换到root用户

sudo

Linux sudo命令,以系统管理者的身份执行指令

sudo su root 	#进入管理员账户

su和sudo的区别

su 让你再不退出当前用户的的情况下,登录另外的用户

sudo 允许特定的用户以root用户或其他用户的身份执行命令

chgrp(不常用)

Linux chgrp(英文全拼:change group)命令

用于变更文件或目录的属组。

与chown命令不同,chgrp 允许普通用户改变文件所属的组,只要该用户是该组的一员。

chgrp [-R] 属组名 文件名
-R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
	chgrp -R admin /usr/local

chown

Linux chown(英文全拼:change owner)命令

用于变更文件或目录的属主和属组。

chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

chown -R admin:admin /data/tools/jdk #给jdk指定属主和属组

chmod

改变文件的9个属性

Linux文件属性有两种设置方法,一种是数字,一种是符号。

Linux 文件的基本权限就有九个,分别是 owner/group/others(拥有者/组/其他) 三种身份各有自己的 read/write/execute 权限。

文件的权限字符为: -rwxrwxrwx , 这九个权限是三个三个一组的!其中,我们可以使用数字来代表各个权限,各权限的分数对照表如下:

touch test1.txt    		#创建 test1 文件
ll						#查看文件权限
chmod 754 test1.txt		#将文件权限设置为 - rwx r-x r--
chmod u=rwx,g=rx,o=r  test1  #和上一句同样的效果

echo

echo"  ">/etc/hosts 	#覆写

echo"  ">>/etc/hosts 	#追加写

sz和rz

sz命令是利用ZModem协议来从Linux服务器传送文件到本地,一次可以传送一个或多个文件。

rz命令是将本地文件传送到Linux服务器。

不能传文件夹,但是能传多个文件

scp

scp [可选参数] file_source file_target 

-r: 递归复制整个目录。
-P port:注意是大写的P, port是指定数据传输用到的端口号

scp -r -P 5522 test1.txt/ test2.txt/ test3.txt/ test4.txt/ admin@172.24.80.42:/data/tools/

将文件通过5522端口传输,指定了目标主机的IP地址和用户名,冒号后是指定的文件夹,命令执行后需要再输入密码


nohup

nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。

nohup Command [ Arg … ] [ & ]

Command:要执行的命令。
Arg:一些参数,可以指定输出文件。
&:让命令在后台执行,终端退出后命令仍旧执行。

nohup /root/runoob.sh &
	在后台执行 root 目录下的 runoob.sh 脚本

用户管理

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

增加用户

useradd 选项 用户名

-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。

useradd sam
	创建了一个用户sam
useradd -d /home/tim -m tim
	-d和-m选项用来为登录名sam产生一个主目录 /home/sam(/home为默认的用户主目录所在的父目录)

删除用户

userdel 选项 用户名

userdel -r sam 
	删除用户sam在系统文件中(主要是/etc/passwd, /etc/shadow, /etc/group等)的记录,同时删除用户的主目录。

用户密码

用户账号刚创建时没有口令

root用户可以为自己和其他用户指定口令,普通用户只能修改自己的口令。

passwd 选项 用户名

-l 锁定口令,即禁用账号。
-u 口令解锁。
-d 使账号无口令。
-f 强迫用户下次登录时修改口令。

passwd sam
	给sam用户设置密码(修改密码)
passwd -d sam
	将用户 sam 的密码删除
passwd -l sam
	锁定sam用户,使其不能登录

### 查看所有用户

vim /etc/passwd  

最下面就是新创建的用户

用户组管理

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。

用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

查看用户组
创建用户时,会创建与用户同名的用户组
vim /etc/group

增加用户组
groupadd 选项 用户组

-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。


删除用户组
groupdel 用户组
修改用户组
groupmod 选项 用户组

-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n新用户组 将用户组的名字改为新名字

groupmod –g 10000 -n group3 group2
	将组group2的标识号改为10000,组名修改为group3。


用户可以在登录后,使用命令newgrp切换到其他用户组,这个命令的参数就是目的用户组

newgrp root
	将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组
修改用户所属组

groups		
	查看当前用户所在的组

groups username 
	查看指定用户所在的组

usermod -a -G 用户组 用户名
	把用户添加到某个附加群组

usermod -g 用户组 用户名
	强行设置某个用户所在组

top

相当于windows的管理器

## bash

变量

name=tim	#等号两边不能有空格
name=tim\ aa	#可以用\将空格 和 " 和 '转义
echo ${name}

#一般大写字符是系统默认变量
#可以在变量path后面累加内容
PATH=${PATH}:/home/bin 或 PATH="$PATH":/home/bin

#将变量设置为环境变量,可以让其他子程序执行
export name 

取消设置的name变量
unset name

read

declare/typeset

array

端口号被占用的问题

netstat -tunlp | grep 端口号
-t (tcp) 仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化为数字
-l 仅列出在Listen(监听)的服务状态
-p 显示建立相关链接的程序名

登录远程主机

telnet 172.24.80.1:8080

## traceroute命令

用于追踪数据包在网络上的传输时的全部路径,它默认发送的数据包大小是40字节。

通过traceroute我们可以知道信息从你的计算机到互联网另一端的主机是走的什么路径。当然每次数据包由某一同样的出发点(source)到达某一同样的目的地(destination)走的路径可能会不一样,但基本上来说大部分时候所走的路由是相同的。

traceroute -d 172.21.10.1
-d:使用Socket层级的排错功能;

kali

nmap

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值