Linux基本命令详解

 

---------------辅助类---------------------

TAB:自动补齐
\  :强制换行
ctrl+u:清空至行首
ctrl+k:清空至行尾
ctrl+l:清屏
ctrl+c:取消本次命令编辑
命令 --help 查看帮助(man 命令)
在终端下:
          复制命令:Ctrl + Shift + C  组合键.
          粘贴命令:Ctrl + Shift + V  组合键.	 

 

--------------文件类---------------------

 

cd 切换工作目录 (/目录/,文件/)

	   绝对路径加/
	   相对路径不加/
		如cd /root 和cd root等效,前者为绝对的根目录,后者为当前根目录下的相对路径。

       cd ..     返回上一级目录	
pwd 查看当前路径

 

 

 

 

 

         		
ls 	查看当前目录
	  /                    查看根下的目录
	 /目录名/               查看目标目录的文件
	 -l                    详细查看
         -h                    显示文件大小单位
	 -alh                  直观显示
	 -a                    查看包括隐藏文件
	 -d                    显示目录本身的属性
	 -A                    类似于a
	 -R 目录                递归查看该目录
	  | wc -l              显示文件数目
	 --color               以颜色区分不同目录
         --sort=size           按大小排序
         --sort=time
	 > 1.txt               将该目录下内容导入到1.txt中
 wc   			       统计文件中的行号 单次数量 字节数
	-l   file			统计行数 
	-w file				统计单词数
	-c  file			统计字符数
du                             查看某个文件或目录的大小
	-a 文件                统计时包括所有的文件
	-h 文件                以更易读的字节单位显示信息
	-s 文件                只统计每个参数所占用空间的大小			    
mkdir 					创建新的目录
	目录名    			在当前路径创建
	/目录名   		        递归创建(前者已存在)
	-p /路径/目录名                  递归创建(根目录下不存在的路径)
        touch 文件名                     新建文件或更新文件时间标记(当前路径下已有该文件)

ln -s /源文件或目录 /链接文件或目标目录  为文件或目录创建链接(文件结尾需/,目录不需要)

cp    /源文件或目录/ /目录或文件               复制文件或目录

	 -r                			递归复制整个目录树
	 -p                			保持源文件的所有属性不变
	 -f		     			强制覆盖目标同名文件或目录
	 -i		     			需要覆盖文件或目录时提醒
rm -f /文件或目录                                    强行删除文件或目录

	   -i /文件或目录                               删除时提醒
	   -r /文件或目录                               递归删除
	   -rf /文件或目录                              强制删除
	   --no-preserve-root /                        删除root

mv 选项 源文件或目录 目标文件或目录       移动文件或目录(并改名)

				
find 查找范围 查找条件                		 用于查找文件或目录
	/     -name   文件或目录名名            在根下按名称查找系统所有符合文件
	      -size   大小            		按大小查找
	      -user    属主                             按文件属主查找
	      -type                                          按文件类型查找 
        find / -name nmap	从根开始查找nmap文件
	find / -iname nmap	不区分大小写从根开始查找nmap文件
	find . -name "ps*"	从当前目录开始查找ps开头的文件
	find . -name "ps*" -exec cp {} /tmp/{}.bak \;	执行拷贝操作并以文件名.bak 结尾

vi [-options] [+[n]] [file]   编辑文件
	-r    					用于恢复系统突然崩溃时正在编辑的文件
	-R	 					用于以只读方式打开文件
	+n    					用来指明进入vi后直接位于文件的第几行,如果不指定则默认最后一行
			  	
	命令模式:该模式下不能修改
			/搜索的内容  			开始向下搜索(n键显示下一个指定搜索内容)
			?搜索的内容  			开始向上搜索(n键显示上一个指定搜索内容)
			dd					剪切光标后一行,p粘贴
			2dd					连续剪切光标后两行
			D					从光标的位置删到行尾
			gg 					返回到文本开始位置
			G  					返回到文本最后位置
			yy					复制当前行
			yw					复制一个单词
			y$					复制光标到结尾
			y^					复制光标到行首
			m,ny				复制m到n行内容
			. 					重复上一个命令
			u					返回上一部操作
			ctrl+g 				显示当前行数
				    
	插入模式:命令——>插入
				   输入a				开始在光标后插入模式
				   输入A				在行尾插入
				   输入i				在当前字母前插入
				   输入I				在行首插入
				   输入o				在下一行插入
				   输入O				在上一行插入
				   输入10回车				光标后挪10行
				   Esc					退出插入模式,进入命令模式
	底行模式:命令——>底行
			set nu 显示行数 
			10d     				删除第十行
			10,15d 				删除10-15行
			20    				光标跳到20行
			.,$d    			  	从光标所在位置到最后全部删除
 				  %s/查找内容/目标内容/g  		将(s)搜索全部(%)内容替换为目标内容,不提示(g)
				  1,5s/seven/domain/g                   将一到五行的seven替换为domain
				  e!  					恢复到打开文本最初状态

				  !ls /  				执行ls /的命令 ,回车切换

cat            			显示出文件的全部内容
	file1 file2 			显示文件一和文件二
	-n 				给输出的所有行加上编号
	file1 file2 > file3 		将文件一和文件二合并为文件三
	/etc/passwd 				查看所有用户的信息
	    /shadow 				密码所在
	file |grep 111 >>1.txt			将从file中查找的111输入到新建的1.txt中    
                        cat /var/log/messages
	                more /var/log/messages
	                less /var/log/messages
	                tail /var/log/messages tail -20 /var/log/messages 
	                watch -n 2 tail -20 /var/log/messages	每隔2秒查看日志后20行的内容                                                                                                                

head file     					查看文本内容默认前十行
	tail file      					查看文本内容默认后十行 
	more file 					以逐条查看方式显示文件,适用于查看大文件 空格翻页,回车跳行 
			tail -f file 			监测文件的变化,可用于查看日志
			echo "111" >>file 		将111输入到file的最后一行
			echo "111" >file 		将111输入到file,并清空file原来的数据
grep
        grep ssh /etc/passwd	筛选ssh字符串	
whereis命令
	
        updatedb
        whereis nmap	        在数据库中搜索字符串,并显示路径
	whereis -b nmap	        查找名称为nmap的二进制文件
        
 
echo  "hello world"             显示hello world
管道:多个命令通过管道的方式一起执行或按照逻辑关系输出结果		
		cat /etc/passwd | grep ssl
		cd aaa & ls				执行两个命令
		cd aaa && ls				如果前面的命令执行成功再执行后面的命令
		cd aaa || ls				如果前面的命令执行不成功再执行后面的命令
shell脚本

	vi 1.sh 
	#!/bin/bash		使用/bin/bash解释下面的脚本语言
	echo -n "IP : "	#-n     让光标停留在本行
	read ip 
	echo "your ip addr is :" $ip 
	:wq
	chmod +x 1.sh
	./1.sh
gedit                             图形化文本编辑(kali)

 

--------------软件类---------------------

 

 tar 

	-xvf 3.tar    						解包归档文件(列表)
	-tvf 4.tar    						查看包内私网文件(详细)
	     4.tar -r 						追加tar文件至归档结尾
	-rvf 4.tar 5   					把5加入4.tar
	-cvf 3.tar 1 2 					将文档1 文档2 归档为3.tar
	-cvzf test.tar.gz 				被压缩的文件1 被压缩的文件2  ——创建归档压缩文件, 后缀为gz
	-cvif test.tar.bz2 			        被压缩的文件1 被压缩的文件2  ——创建归档压缩文件, 后缀为bz2
	-zxvf 3.tar.gz -C (路径)             解压3.tar.gz
	jxvf 3.tar.bz2 -C(路径)              解压3.tar.bz2
	-c 		创建归档文件
	-v 		输出详细信息
	-f 		表示使用归档文件
	-x 		解开归档文件
	-t 		列表查看包内的文件
	-p 		解包时保留原始文件及目录的权限
	-C 		解包时指定释放的文件夹
	-z 		调用gzip程序,进行解压或压缩
gzip 文件名 压缩后的文件名.gz              压缩
     -d 压缩文件   			 解压
     -9 文件名 压缩后的文件名.gz 	         高度压缩文件
bzip2 文件名 压缩后的文件名.bz2             压缩
	-d 压缩文件  			  解压
	-9 文件名 压缩后的文件名.bz2        高度压缩文件
rpm [options] RPM包文件                    安装、卸载RPM软件 
    -ivh /软件路径	                  安装软件
    -i                  	          装一个新的rpm软件包
    -U           	  		  升级某个rpm软件
    -F			  		  更新某个rpm软件
    -e  软件名	                          卸载
    -qa                                   查看安装的软件
    -qi 软件名                             查看软件详细版本信息        (红帽)
yum -y install 	软件名         安装软件(光盘自带)--包含依赖关系
     yum -y remove 软件名	  
     yum -y remove 软件名    卸载软件 
			     配置yum:vi /etc/yum.repos.d/rhel-source.repo 
			      .,$d    删除光标到最后    	用底行模式删除最后六行 (.代表光标所在位置,$代表最后,d代表删除)
			     在enabled按a再按1  		将0替换为1
			     将ftp从t后整行删除,输入ile:///media/Server
			     复制/etc...,在底行模式下wq保存退出
			     输入rpm --import 粘贴   导入密钥
			     yum -y install firefox 安装firefox      (红帽)
编译安装:
			      tar解包,并释放到指定目录
			      ./configure             设置安装目录,安装模块
			      make编译               生成可执行的二进制文件
			      make install            复制二进制文件到系统,配置应用环境
apt-get update                         更新远方仓库里包的信息下载下来(更新数据库,对系统没有影响)

      apt-get upgrade		       进行系统更新
      apt-get -cache search apche      搜索有哪些包可安装,如apche

      apt-get update         	       下载软件源的数据包的信息
	    install	apche2         安装数据包,如apche2
	    remove apche2              卸载数据包
	    clean                      清除已下载的包            (kali)
dpkg -i xx                                安装下载程序 
     -l                                   简明地列出软件包的状态。
     -r xx                                卸载	
     -L  xx                               列出指定软件包的信息
     -S|--search <表达式> ...              搜索含有指定文件的软件包。   (kali)(kali)

 

----------------系统类---------------------

 

uname 查看系统相关信息
	-a显示主机名,内核版本,硬件平台等
	-r显示内核版本
hostname 查看主机完整名称,所在域的名称
vi /etc/selinux/config           配置安全机制
service iptables stop		 关闭防火墙
chkconfig iptables off 		 禁止开机启动
init 6				 优雅关机
ls /etc/init.d                   查看服务		
cat /proc/cpuinfo                 查看cpu信息
          meminfo                 查看内存
date 				  查看时间
				  查看时间
halt                              关机
reboot                            重启
shutdown -h now                   关机
 chmod
	+x file 	            给file增加执行的权限
	-R 777 file                 给file目录递归最大权限(所有子目录)
	chmod 444 filename          取消运行权限(444分别代表三个使用者的权限)
	chmod 755 filename          开启运行权限(权限大小r为4,w为2,x为1)
	chmod u-w                   让所有者失去写的权限(u代表所有者,g代表属组,其他人为e)
	chown username file         修改文件的所有者	
top                                 监视Linux系统信息		
	k	kill 2441	    结束2441进程
        q	quit		
dmesg 		查看var/log/messages
ps				    调出系统进程
    -ef                             详细显示进程信息   
    -aux		            调出详细进程
ps -aux |grep nginx	            调出该进程
kill -9 pid       				        强制关闭该id对应的进程	
chkconfig mysql on		     开机启动该服务
		off
                --list                列出所有服务    (红帽)
umount /dev/sr0                卸载光盘
mount /dev/sr0 /media          重新挂载
cd /media
ls
useradd options username           添加用户账号
	-u				指定UID标记号
	-d				指定宿主目录
	-e				指定账号失效的时间
	-g				指定用户的基本组名(UID号)
	-G 				指定用户的附加组名(GID号)
	-M				不为用户建立并初始化宿主目录
	-s				指定用户登录shell
userdel -r 用户名			 彻底删除用户
su - 用户名 								切换用户
kill -kill -t user 					         注销用户
passwd 用户名 							设置密码
cat /etc/passwd 						查看本地用户--------ls /home
	user:x:500:500::/home/user:/bin/bash(x:影子密码,UID:用户标识,GID:分组标识)
	将用户的UID 号和GID号改为0,提权为iroot 
cat /etc/shadow					 查看用户密码

 

----------------网络类---------------------

 

ifconfig         查看所有网卡ip地址
      etho       只查看etho
      :1 192.168.0.2/24     创建逻辑接口
      192.168.9.1           临时修改ip

 

 

 

 iptables -F                    清空防火墙
 setenforce 0	                关闭防火墙

  
macchanger -m 00:11:11:11:11:11 eth0    修改mac地址
			     down
			     up         开启接口 
netstat :查看系统的网络连接状态,路由表,接口统计等信息
	-a:显示所有活动连接
	-n:以数字形式显示
	-p:显示进程信息
	-t:查看TCP协议相关信息
	-u:查看UDP协议相关信息
	-r:显示路由表信息
	-tnlp  查看tcp开启端口
	-unlp  查看udp开启端口
 netstat -pantu	查看当前计算机的tcp和udp连接        
 
 netstat -pantu | egrep -v '0.0.0.0|:::'		筛选掉含有0.0.0.0或:::的行    
    

netstat -pantu | egrep -v '0.0.0.0|:::'	|awk '{print $5}'	拼接显示每行第五列内容
    

netstat -pantu | egrep -v '0.0.0.0|:::'	|awk '{print $5}' | cut -d ':' -f 1 进一步通过:分块只显示第一块内容
    
 netstat -pantu | egrep -v '0.0.0.0|:::'	|awk '{print $S}' | cut -d ':' -f 1 | sort | uniq	排序并过滤重复内容
netstat -pantu | egrep -v '0.0.0.0|:::'	|awk '{print $S}' | cut -d ':' -f 1 | sort | uniq > ip 输出到ip文件	|awk '{print $5}'	拼接显示每行第五列内容
    

netstat -pantu | egrep -v '0.0.0.0|:::'	|awk '{print $5}' | cut -d ':' -f 1 进一步通过:分块只显示第一块内容
    
 netstat -pantu | egrep -v '0.0.0.0|:::'	|awk '{print $S}' | cut -d ':' -f 1 | sort | uniq	排序并过滤重复内容
netstat -pantu | egrep -v '0.0.0.0|:::'	|awk '{print $S}' | cut -d ':' -f 1 | sort | uniq > ip 输出到ip文件
service network start        启动network的服务
		stop
		restart      释放IP,重新获取
		status	     显示服务状态
dhclclient  eth0              重新获取接口ip 
/etc/init.d/network restart   重新获取接口ip
 
ifdown eth0          禁用网络接口
ifup eth0            启用网络接口 	(redhat有神效)												
 route -n:			查看路由表信息
			
	route del default gw IP地址 			 			删除路由器中的默认网关记录
	route add default gw IP地址  						向路由器中添加默认网关记录
	route add net 网段地址/24 gw ip地址 		                        添加到指定网段的路由记录
	route del net 网段地址       						删除到指定网段的路由记录
 
dns配置
vi /etc/resolv.conf          修改本机需要使用的DNS服务器的配置    
nameserver 192.168.0.1    
nameserver 8.8.8.8	
redhat配置ip:
 vi  /etc/sysconfig/network-scripts/ifcfg-eth0         

    编辑文件如下:

        DEVICE=eth0                 //指出设备名称
        BOOTPROT=static            //启动类型 dhcp|static
        BROADCAST=192.168.1.255     //广播地址
        HWADDR=00:06:5B:FE:DF:7C    //硬件Mac地址
        IPADDR=192.168.0.2          //IP地址
        NETMASK=255.255.255.0       //子网掩码
        NETWORK=192.168.0.0         //网络地址
        GATEWAY=192.168.0.1         //网关地址
        ONBOOT=yes                  //是否启动应用
        TYPE=Ethernet               //网络类型

        配置参考:
            DEVICE=eth0
            BOOTPROT=static
            IPADDR=192.168.1.188
            GATEWAY=192.168.1.1
            NETMASK=255.255.255.0
            ONBOOT=yes
redhat配置网关
vi /etc/sysconfig/network
    NETWORKING=yes 
    HOSTNAME=localhost.localdomain 
    GATEWAY=192.168.2.2
kali配置ip地址
配置使用动态IP地址
    vi /etc/network/interfaces

            iface eth0 inet dhcp             //用于设置网络接口eth0 通过dhcp协议获取网络配置

    /etc/init.d/networking restart

配置使用静态IP地址
     vi /etc/networking/interfaces

      
      

 

 

 

你可能感兴趣的:(渗透测试,Linux运维)