Linux常用命令(必须掌握)

本文围绕Linux系统展开,介绍了shell脚本统计单词频率、日志条数统计等操作。详细讲解了mkdir、rmdir、cd、ls等常用命令,还涉及文件操作、远程连接、系统管理、网络管理、用户与组管理、权限管理等内容。此外,阐述了SSH连接原理及在Linux发布javaweb项目的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

shell脚本统计单词频率、出现次数最多的3个单词

日志条数动态实时统计

linux下进程和线程状态查看

mkdir:

linux中,用mkdir命令创建新的目录时,如果需要在其父目录不存在时先创建父目录的选项是 :  -p 创建多层目录

(-p或--parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录)

rmdir:移除空文件

需要掌握的命令 http://www.cnblogs.com/dazhidacheng/p/8030481.html

Linux常用命令:

cd:切换目录

ls : 能看见的文件的名称  -a (所有的 有. 的是隐藏目录) -l(所有的信息展示出来 权限rmx 文件大小) -lh(h指友好的显示 文件大小的显示)

ll :展示所有文件 (cmd中命令为dir) -ll常用 显示文件的详细信息(ls-l的简写) 以后使用ll即可

 

查看的命令 : 

more less tail  tail -f 动态查看文件(如日志文件,Tomcat的控制台输出日志会保存在 .log文件中)

远程连接 : 

ssh(安全外壳协议)

win下查看IP地址使用ipconfig  linux下查看ip命令为 ifconfig   ifconfig:查看当前网卡信息

使用远程连接软件进行连接 输入连接主机的ip及用户名等信息 

如果遇到虚拟机IP地址为127.0.0.1 可能是设置的问题,连接必须设置为桥接的方式

一般默认是nat方式的。如果改变之后呢,重启一下系统或者过一段时间等系统更新了

就可以ifconfig -a 查看虚拟机里面的Linux系统的IP地址了

然后将这个地址放入xshell连接配置里面就可以连接成功了

解决办法 : 通过 dhclient 命令配置网络接口参数。 dhclient -v

安装secureCRT时产生中文乱码参考 https://blog.youkuaiyun.com/zhengqijun_/article/details/70197567

文件的操作

touch 文件名:创建空文件 -vi进行编辑 w进行修改 esc 之后 打印:wq保存并修改

cp  文件名 目录/文件名:复制文件  cp 1.txt 2.txt

mv 文件名 目录/文件名: 移动目录(剪切) mv 4.txt a/5.txt  (移动时重命名) 

mv 文件名 新文件名  mv 4.txt   5.txt (相当于重命名操作)

rm 文件名:带询问的删除文件

rm  -f  文件名:不带询问的删除文件  rm  -rf  目录|文件: 不询问递归删除(慎用,整个目录删除)  . /* 前面的点代表的是当前目录(慎用)

常用命令-tar

tar :打包|解压  -cvf :打包一个文件或目录   tar 参数 文件名 要打包|解压的文件目录

-zcvf : 打包并压缩 (gzip)

-xvf (-C)  : 解压或打开一个tar文件

grep:查找 grep 查看的字符串 查看的文件名 --color(高亮查看符合条件的字符串) 查看进程时会使用

pwd : 查看当前所在工作目录

wget : 下载资源 wget 资源的路径

vi 和 vim

编辑普通文件

三种模式 : 命令行(:) 插入模式(o,i,a) 底行模式(在命令行模式输入: 进入底行模式 wq保存退出)

:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑

:wq! 强制保存文件,并退出vi

复制粘贴行 : 在命令行模式 随便某一行 输入yy 想要粘贴的行输入p

在Linux系统中,用vim编写shell脚本文件时,在一块代码前快速加#号注释

有两种方式:

(1) 使用替换命令

:% s/^/#/g 来在全部内容的行首添加 # 号注释

:1,10 s/^/#/g 在1~10 行首添加 # 号注释

(2) vim的VISUAL BLOCK 模式

  1.  进入vi/vim编辑器,按CTRL+V进入可视化模式(VISUAL BLOCK)。
  2.  移动光标上移或者下移,选中多行的开头。
  3. 选择完毕后,按大写的的I键,此时下方会提示进入“insert”模式,输入你要插入的注释符,例如#。
  4. 最后按ESC键,你就会发现多行代码已经被注释了。
  5. 删除多行注释的方法,同样 Ctrl+v 进入列选择模式,移到光标把注释符选中,按下d,注释就被删除了。

 

重定向输出>和>>

ifconfig > 3.txt   cat 1.txt >3.txt(覆盖前一个操作 >>使用时为追加)

&&  : 多个命令的连接 (在一行中写多条命令)

管道| 将一个的输出作为另一个的输入  ifconfig | grep 192.168(在ifconfig的结果中查找192.168相关的字符串)

ps -ef | grep java //管道查询跟java相关的进程  (进程查找ps -ef) ps -ef | grep 3306 查询跟3306相关的进程 

 

系统管理命令

date 系统时间

df 显示磁盘信息

df –h  友好显示大小

free 显示内存状态

free –m 以mb单位显示内存组昂头

top 显示,管理执行中的程序

clear 清屏幕 Ctrl +l(快捷命令)

ps 正在运行的某个进程的状态

ps –ef  查看所有进程

ps –ef | grep ssh 查找某一进程

kill 杀掉某一进程

kill 2868  杀掉2868编号的进程(pID)

kill -9 2868  强制杀死进程 (常用)

du 显示目录或文件的大小。

du –h 显示当前目录的大小

who 显示目前登入系统的用户信息。

hostname 查看当前主机名

修改:vi /etc/sysconfig/network

uname 显示系统信息。

uname -a 显示本机详细信息。

依次为:内核名称(类别),主机名,内核版本号,内核版本,内核编译日期,硬件名,处理器类型,硬件平台类型,操作系统名称

网络管理命令

ifconfig :查看所有网络设置 

ifconfig 网卡名称(eth0) down/up 禁用/开启 网卡

ping:查看网络是否通畅 (Linux里 Ctrl+c停止/取消)

netstate -an | grep 3306  查看端口3306(win下 端口(PID)查看命令netstate -ano,linux 没有o )

了解用户管理

添加用户

useradd 用户名 : 默认在home目录下给用户创建一个目录

password 回车输入密码  家目录 /home 下(运维设置)

删除 userdel  用户名 只删除用户 不删除家目录 (-r删除家目录)

切换用户 

ssh -l 用户名 -p 22 主机( ssh -l tom -p 22 主机ip地址   exit )

第二种(常用)  su - 用户名 (su - jerry) root用户的切换  exit   ;userdel -r jerry  ;su -root  下一步 输入密码......

组管理

添加

groupadd 组名

useradd 用户名 -g 组名

删除

groupdel 组名(组下有用户 无法删除)

权限管理

id, su

三种文件 :  普通 ,目录 ,设备文件

ll展示的 d开头为目录文件 -开头为普通文件  后跟9个权限 3个3个一组 分别为当前用户对此文件的操作权限,当前组的操作权限,其他用户权限

了解修改文件权限(属于自己的才能修改) 用户 组

chmod 777 文件名(常用): (7表示所有权限) chmod 755 a.txt (超级管理员有任何权限)

chown 变更改文件的归属者(用户或组) chown u1:public  a.txt chown -R u1 : public dir

 

 

:

linux:
            1.权限是64。是什么权限(?)
            2.杀死权限为什么是-9

其实kill就是给某个进程id发送了一个信号。默认发送的信号是SIGTERM,而kill -9发送的信号是SIGKILL,即exit。exit信号不会被系统阻塞,所以kill -9能顺利杀掉进程。当然你也可以使用kill发送其他信号给进程。

 关于kill -9无法杀死进程的问题?为了保证数据的一致性,Linux禁止对由于IO挂起的进程进行kill操作。

            3.linux怎么保护文件被误删除

Linux chattr命令用于改变文件属性。

这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:

  1. a:让文件或目录仅供附加用途。
  2. b:不更新文件或目录的最后存取时间。
  3. c:将文件或目录压缩后存放。
  4. d:将文件或目录排除在倾倒操作之外。
  5. i:不得任意更动文件或目录。
  6. s:保密性删除文件或目录。
  7. S:即时更新文件或目录。
  8. u:预防意外删除

Linux系统中,在root帐号下使用rm * -rf是非常危险的,一不小心就可能删除系统中的重要文件。

通常运维工程师或者系统工程师会用一些特殊的方法,来防止误删除系统文件和重要的配置文件,比较常用的方法是chattr +i filename

虚拟主机

HTTP/1.1 使用虚拟主机技术,使得一台服务器拥有多个域名,并且在逻辑上可以看成多个服务器。

代理服务器接受客户端的请求,并且转发给其它服务器。

使用代理的主要目的是:

  • 缓存
  • 负载均衡
  • 网络访问控制
  • 访问日志记录

代理服务器分为正向代理和反向代理两种:

  • 用户察觉得到正向代理的存在。
  • 而反向代理一般位于内部网络中,用户察觉不到。

 

网关服务器  与代理服务器不同的是,网关服务器会将 HTTP 转化为其它协议进行通信,从而请求其它非 HTTP 服务器的服务。

隧道  使用 SSL 等加密手段,在客户端和服务器之间建立一条安全的通信线路。

 SSH(远程连接工具)连接原理:ssh服务是一个守护进程(demon),系统后台监听客户端的连接,ssh服务端的进程名为sshd,负责实时监听客户端的请求(IP 22端口),包括公共秘钥等交换等信息。

ssh服务端由2部分组成: openssh(提供ssh服务)    openssl(提供加密的程序)

ssh的客户端可以用 XSHELL,Securecrt, Mobaxterm等工具进行连接

 1.SSH是安全的加密协议,用于远程连接Linux服务器                
   2.SSH的默认端口是22,安全协议版本是SSH2                
   3.SSH服务器端主要包含2个服务功能SSH连接和SFTP服务器                
   4.SSH客户端包含ssh连接命令和远程拷贝scp命令等 

 https://www.cnblogs.com/ftl1012/p/ssh.html 

在Linux发布javaweb项目 (安装JDK<检测是否安装了''rpm -qa|grep java' -有,卸载'rpm -e --nodeps java-.....'-重安装'上传JDK,用filezilla ftp软件上传到root目录下,在将root目录下的文件复制到java目录下'>-->MySQL-->Tomcat)

一般服务器使用的都是Linux系统

发布项目

1.数据库和表

备份

在windows下

mysqldump -uroot -p TableName > g:/1.sql

将1.sql上传 root

通过远程工具还原数据库

先登录MySQL

创建数据库TableName

打开数据库TableName source/root/1.sql

2.项目

将项目打成war包(eclipse -export )

在Tomcat/webAPP目录下,只要Tomcat启动,war包自动解压 

将 store.war上传到虚拟机root目录下

将其移动到 usr/local/tomcar/webapp下

自学Linux https://cloud.tencent.com/developer/article/1116258

腾讯云Linux服务器 http://bbs.qcloud.com/thread-2628-1-1.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值