Linux一些比较常用且有用的命令积累


pkill  通过进程名操作进程
例如:杀掉iptalbes进程  pkill -9 iptabless
-HUP表示重新加载进程
例如:
pkill -HUP nginx  就是nginx的热重启的机制

 

#显示文件或者目录的权限以及它的大小
ll -h 一个目录

 同时可以加上通配符匹配要匹配的文件,如下图:

 

查看Linux系统版本
lsb_release -a

查看Linux内核命令
uname -a

 

cp -a  文件或者路径名字
常用于备份,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合

 

netstat -antp  
查看网络状态,经常用于服务关闭或者重启之后查看网络状态
service httpd status
查看某个服务的状态
如何查看某一个指令的安装包?(比如ipconfig)
先用which在用rpm -qf查找
which指令的功能是查看命令在环境变量$PATH设置的目录里查找符合条件的文件
如which ifpconfig 的命令在/sbin/ifconfig
rpm -qf  系统文件
rpm -qf是查看系统的文件属于那个包
如rpm -qf /sbin/ifconfig

注意rpm -qa | grep 包名 是查看已经安装了的按安装包

 

df 与df的区别

df -h 查看的是已经挂载的磁盘使用情况
du -h 显示当前目录下的各个文件磁盘使用情况  如果是du -sh 那么就是所有的目录使用情况,看下图:

 

 

 

 

 

lsof  用来查看某个设备文件的使用进程信息
如果再卸载设备时,系统提示无法卸载设备,通常是有进程还在访问该设备或者使用该设备上面的文件。这时可用lsof命令获取使用他的进程信息,然后再应用中停止使用该设备或者进程。
如sshd的进程操作如下图:



sort命令
使用场景,对于数据量比较大,且需要排序的数据,我们使用sort命令可以进行对大量的数据进行处理。
如:du -h 查看某个目录下的文件或者文件夹占用磁盘空间的大小排序,使用du -h /tmp | sort -nr

 

 -n 表示按值排序,而-r表示降序排序。

以下是sort的命令参数:

-k 和 -t 参数在对按字段分隔的数据进行排序时非常有用:

例如/etc/passwd文件。可以用 -t
参数来指定字段分隔符,然后用 -k 参数来指定排序的字段。举个例子,要对前面提到的密码文件
/etc/passwd根据用户ID进行数值排序,可以这么做:

sort -t ':' -k 1 -n /etc/passwd

 

 

| 管道命令,内容重定向
| 命令,可以将一个命令产生的结果,作为另外一个命令的数据源
例如:du -h /tmp/ | sort -nr du 命令的输出重定向到sort命令进行排序
grep 命令
正则找数据(后续会详细讲到)
tar 命令
Unix和Linux上最广泛使用的归档工具是 tar 命令

 


更多的可以看Linux命令大全与shell编程,或者网上也有


 

 

 

route -n 查看路由表
route add default gw ip  临时添加网关
route del default gw ip   临时删除网关
永久:
修改/etc/sysconfig/network-scripts/eth0


ifconfig  查看ip等信息
ifconfig eth0 ip netmask 255.255.225.0  临时配置ip
ifconfig etho ip/24   方法2
永久:
修改/etc/sysconfig/network-scripts/eth0
netstat -altp  查看网络连接的状态、路由信息、接口

 

 

 

 

Linux远程管理服务器ssh命令
ssh 用户名@IP地址
例如ssh root@192.168.109.2
这个可以写在代码或者shell脚本里面
window进行远程管理我们一般使用xshell软件

 

scp命令
该命令可以实现文件的传输,从可以从客户端传文件到服务端,也可以从服务端传文件到客户端
客户端传文件到服务端如下所示:
scp -P 22 /tmp/at.log yansunda@192.168.109.7:/tmp
从服务端下载文件到客户端如下所示:
scp -P 22 yansunda@192.168.109.7:/tmp/at.log /tmp/
注意:1、连接的服务端的ip和文件路径的连接用冒号“:”,进行相连。
   2、上述两个都需要使用账号和密码进行登录,也就是说每执行一次scp命令,都需要输入密码
问题:如何解决每次执行scp都需要密码的问题?我可否一次scp就可以了呢?
可以的,那就是提前将两个服务器之间的依赖关系建立,就是把客户端的公钥保存在服务端上面。
操作如下:
1、生成本地的公钥,命令如下
  ssh-keygen -t rsa
  

 

 2、将本地生成的.ssh/id_rsa.pub文件复制到服务器中的.ssh/authorized_keys文件中

  注意:这个密钥文件针对的服务器里面某一个用户建立的信任关系,且.ssh/authorized_keys的内容要一行,可以用set nu进行验证,如下:

 

 

  

  最终使用SCP命令可以不用账户密码进行登录:

  

 

   如果要从服务器上面下载东西,那么也进行认证就可以了。

   

移动当前目录底下的所有文件到某一个目录下面
mv * /bak/yum.bak/  
注意:不能使用mv ./  /backyum.bak
那么移动yum.bak文件夹下的所有文件到当前目录应该用mv /bak/yum.bak/* ./
注意:不能使用mv /bak/yum.bak ./,这样会把yum.bak整个文件夹移动过来

 

 

vim中进行字符串替换的操作
开始行,结束行/s/被替换字符/替换字符/【g】
s是匹配的意思,必须有。
g是是否进行全局替换,如果加上g的话当前行所有值都会被替换
例如,替换61-65行第一个#为空【 】
:61,65/s/#/ /

例如:替换61-65行所有#为空【 】
:61,65/s/#/ /g

 

删除当前光标所在的字符x(小写)

 

 

ps aux  
a:表示的时显示所有用户的进程,如果只想显示当前的用户,可以把a去掉,具体可以看到pa -aux的用法
复制多行8yy
还可以使用p进行复制粘贴

 

posted @ 2020-09-10 16:36  洛飞  阅读(314)  评论(0编辑  收藏  举报