Linux

​ 大型企业高并发的 Java 应用程序都是部署在大型服务器之上的,而服务器的操作系统一般是使用高性能的 Linux(或Unix)的操作系统,不是 Windows 操作系统,所以编程人员需要在服务器上部署程序,就需要与服务器交互;Linux 命令成为程序员一个很必要的技能

  • 部署 Web,C++等应用程序
  • 定时调度:脚本(脚本中调度程序)
  • 统计与数据库交互:按日统计、按月统计
    [En]

    Statistics interacting with database: daily statistics, monthly statistics*

  • 错误数据修复
  • 用户个性化数据统计
  • 数据稽核预警
  • 基于 Linux 平台的数据计算:例如一个月的全省联通用户的详单金额统计
  • ……

​ 大型服务器的的主机操作系统一般分为 Linux 和 Unix,IBM 主机一般安装 Linux 系统,而 HP主机一般安装 Unix 系统,两种操作系统的命令有细微的差异,但 Linux 是建立在 Unix 之上的,所以 Linux 命令适用 Unix,并且 Linux 命令严格区分大小写

命令名 [选项] [命令参数];
命令、选项和参数用空格分隔

[En]

Commands, options and parameters are separated by spaces

命令名必须可用,选项和命令参数可能不可用

[En]

Command name must be available, options and command parameters may not be available

命令 描述 man ls 帮助命令:查找命令的使用方法(查看 ls 命令的使用) cd 改变路径(Change Director):注意相对路径和绝对路径 /root/user/uuu ../../../../user/io/ cd – 快速回到之前的路径(后退) pwd 当前所在目录 ls (List): 查看当前目录下的文件及文件夹 ls -a 显示隐藏文件 ls -l 以长格式的形式查看当前目录下所有可见文件的详细属性 ls -lt 以更新时间为顺序使用长格式列出信息 ls -ltr 对输出文件进行各种排序 ls -p 只给目录添加/ ls -lt|more 空格键:一屏一屏翻页;Enter:一行一行翻页

命令 描述 touch 文件名 创建一个空文件(很少用) > 文件名 重定向方式创建一个文件,如文件没有则创建,有则清空追加 cat grf.sh > 文件名 创建一个文件 >> 文件名 重定向方式创建一个文件(

) cat grf.sh >> 文件名 重定向方式创建一个文件 mkdir 文件夹名称 创建一个文件夹 vi 编辑器命令创建文件

命令 描述 cp 文件名1 文件名2 复制文件或目录 cp -r 文件夹1 文件夹2 复制文件或文件夹都可以 mv 对象1 对象2 剪切,重命名且能操作文件夹

命令 描述 rm 文件名 删除文件 rm -r 文件夹名称 删除文件夹 rm -rf 文件夹 文件或文件夹都可以删除

命令 描述 cat 文件名 显示文件内容 more 文件名 以一页一页的形式显示,逐页阅读 cat 文件名|more 回车键(一行一行查看);空格键(一版一版查看) head -5 文件名 查看文件前五行 cat 文件名|head -5 查询前五行 tail -5 * 查看尾五行 grep 匹配搜索 文件名|grep “搜索值” 过滤搜索

命令 描述 pwd 自己所在的位置 mkdir 创建文件夹 su 切换用户 su – root 切换到 root 用户,向上切换需要密码(鉴权),由高级权限用户切换到低级用户无需鉴权 whoami 当前用户 exit 退出到上一次的用户 touch a 创建一个空文件夹 cp 拷贝文件 clear 清屏 mv 移动,源文件会没有了 gzip 文件名 文件名.gz 压缩文件 gunzip 文件名.gz 解压缩文件 tar -cvf 文件名.tar 打包一个 tar 文件 gzip 文件名.tar 压缩 tar 文件 tar -czvf 文件名.tar 打包压缩一个 tar gunzip 文件名.tar.gz 解压缩 cat 文件名.tar|tar -xvf – 显示 tar 文件内容 cat 文件名.tar.gz|tar -xzvf – 显示 gzip 压缩包文件内容 zcat 文件名.tar.gz|tar -xvf – 显示压缩包文件内容 rm 文件删除 rm -rf 删除文件或文件夹(慎用) grep -l 关键字 只列出相关的文件名 grep -n 关键字 列举出文件名,以及文件中出现的那行代码

VI 进来默认是命令行状态
状态的转换通过命令实现(命令行状态、编辑状态)

[En]

The transition of state is achieved by command (command line state, edit state)

操作指令 描述 ESC 键 功能切换键,从编辑状态回到命令行状态 h,l,k,j 键 左右上下 i 在前面追加 shift + i 回到当前行首列 a 在后面追加 shift + a 回到当前行尾列 x 删除一个字母(当前光标处的内容) r 替换当前字母 cw 替换一串字母,以空格为分隔(change word) yy 复制 p 黏贴 nyy p 复制n行,n代表数字 dd 删除1行 ndd 删除n行,n代表数字 o 当前行下面加一空行 shift + o 当前行上面加一空行 shift + j 行合并 shift + d 删除当前光标到行尾的所有内容 ctrl + g 得到当前文本的总行数 shift + g 快速回到最后一行 :1 快速回到第一行 :set number 给文本一个虚拟的行号 :wq! 保存并退出 :q! 退出不保存 :w! 保存而不退出 /字符串 查找字符串 :%s/目标串/结果串/g 替换字符串 :%s/被替换/替换/g 全局替换,将String”被替换”替换为”替换” :%s/^#//g 字符串替换 :r bb.txt 读取 bb.txt 文件进来 > 定向覆盖 >> 重定向追加

文件名以 .sh 作为结尾,使用 VI 编辑器命令编写本质上是许多 Linux 命令的集合
Shell 脚本完成某项功能运行.sh脚本名将Shell 脚本持久化到磁盘中

date +%Y
date +%m%d%H%M%s
for cityCode in 1 2 3
do
echo $cityCode
done
^表示开头开头替换,#表示全局
:%s/^/#/g
cat txt|grep -v ^#|while read city
do
echo ${city}
done

cat 1.txt|awk '{a+=$2}END{printf "%10.2f\n",a}'

默认分隔符:空格
cat txt|awk '{print 50}'

cat txt|awk 'FS=""{print $0}'

cat txt|

指定分隔符
cat 1.txt|awk 'FS="|"{print $1}'

cat txt|awk '{sum+=$2}END{printf "%10.2f\n",sum}'

查看后台运行进程
ps -ef

ps -ef|grep vi

kill -9 3947

ps -ef|grep 文件名|grep -v grep|awk '{print "kill -9",$2}' |sh

ps -ef|grep 文件名|grep -v grep|awk '{print $2}'|xargs kill -9

排序,剔重
cat a.txt|sort -u
diff txt1 txt2
find . -type f|grep xxx|grep yyy
find . -type d|grep xxx|grep yyy
grep -l "18679155625"  *
grep - n "18679155625"  *
grep -l "18679155625"  *|wc -l (L)
gzip 文件名 ---> 文件名.gz
gunzip 文件名.gz --->  文件名
tar -cvf a.tar a --->  a.tar
gzip a.tar ---> a.tar.gz

先解压缩,再解包
gunzip a.tar.gz ---> a.tar
还原成功
cat a.tar|tar -xvf - ---> a
tar -czvf a.tar.gz
cat a.tar.gz|tar -xzvf -
compress a.txt      --->   a.txt.Z
uncompress  a.txt.Z --->  a.txt
linux操作系统的注释:#

ls a[0-1]文件名.txt

在模式转换之后,该命令可以调用<details><summary>*<font color='gray'>[En]</font>*</summary>*<font color='gray'>After the pattern conversion, the command can call the</font>*</details>
sh ksh
set -o vi
esc /关键字 回车 n

压缩
compress a.txt  a.txt.Z

解压缩
uncompress

Linux 系统中定时调度的一个配置文件
crontab

查看使用(看看而已)
crontab -l

编辑们谨慎地使用它。<details><summary>*<font color='gray'>[En]</font>*</summary>*<font color='gray'>Editors use it cautiously.</font>*</details>
crontab -e
删除使用(你猜)
crontab -r drop

杀进程
ps -ef|grep vi|grep -v grep|
awk '{print $2}'|xargs kill -9

后台运行
nohup sh 文件名.sh &

自动调度
crontab

看俺自己
crontab -l

编辑
crontab -e

查看内存
df -h

vi function.sh

函数
get() {
echo ok
}

get

:wq!

sh function.sh

文件传输,传输接收
get() {
f
tp 192.168.1.1 <> jk.sh

ls -lt

给用户赋权
chomod 777 kj.sh

sh kj.sh
ls -lt
crontab -e

while sleep 3

> do
> date
> done

find /|grep

挂 crontab 的自动调度
cat kj*
cd /home/xiqingbo
echo success >>xqb.log
crontab -1
55 15 * * * /home/xiqingbo/kj.sh

vi txt

0791
0792
0793

:wq!

vi main.sh
cd /home/ztkj

cat txt|while read city
do
nohup sh list.sh ${city} &
done

:wq!

vi list.sh

city=$1
echo ${city} begin
sleep 5
echo $city end

:wq!

sh main.sh

vi list.sh

city=$1
echo ${city} begin >>grf.log
sleep 180
echo $city end >> grf.log

实时监控日志动态
tail -f grf.log

Original: https://www.cnblogs.com/xiqingbo/p/system-01.html
Author: Schieber
Title: Linux

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/523902/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • python_base

    1.查看可用函数dir() dir()可以用于查看某个包中可以使用的对象 import math dir(math) 2.查看使用帮助help() 用于查看帮助,用法是具体到函数名…

    Linux 2023年6月7日
    094
  • VMware ESXi 7.0 U3 SLIC 2.6 & Unlocker

    提供标准版和 Dell (戴尔)、HPE (慧与)、Lenovo (联想)、Inspur (浪潮)、Cisco (思科) 定制版镜像 请访问原文链接:VMware ESXi 7.0…

    Linux 2023年5月27日
    075
  • mysql join语句的执行流程是怎么样的

    mysql join语句的执行流程是怎么样的 join语句是使用十分频繁的sql语句,同样结果的join语句,写法不同会有非常大的性能差距。 select * from t1 st…

    Linux 2023年6月8日
    096
  • 职场最讨厌的人,没有之一

    人物背景: 姓名:春绿,性别:未知,年龄:不详,工龄:菜鸟,人物特点:爱管闲事,管不住自己的嘴,情商约等于0.000001 人物故事: 1、领导给小明安排了一个工作,被春绿听到了,…

    Linux 2023年6月13日
    0100
  • 用 shell 脚本做 tcp 协议模拟

    问题背景 公司有一套消息推送系统(简称GCM),由于人事变动接手了其中的客户端部分。看了一下文档,仅通讯协议部分有几页简单的说明,代码呢又多又乱,一时理不出一个头绪。由于消息是从后…

    Linux 2023年6月6日
    0137
  • MySQL常见操作

    1.登录 mysql -uroot -p 2.如何查询数据库服务器中所有的 mysql> show databases; 3.如何选中一个数据库进行操作 mysql>u…

    Linux 2023年6月7日
    097
  • Linux命令篇-sed 命令

    sed – stream editor for filtering and transforming text; sed:利用脚本来处理、编辑文本文件; &#x…

    Linux 2023年6月13日
    097
  • alpinelinux镜像安装中文字体

    镜像下载、域名解析、时间同步请点击阿里云开源镜像站 编辑dockerfile,先切换国内镜像源,默认alpinelinux是国外源,下载包会很慢 vim Dockerfile FR…

    Linux 2023年6月7日
    0106
  • .Net Core下DllImport使用方法及扩展

    引言​ 在有时候的开发过程中,我们会遇到需要调用系统的API,不巧的是.Net Core可能没办法为我们提供相关的调用方式。那需要如何才能解决这个问题呢?​ 这时候我们就可能会考虑…

    Linux 2023年6月13日
    080
  • 每天一个 HTTP 状态码 206

    206 Partial Content 是当客户端请求时使用了Range头部,服务器端回复… 206 Partial Content 206 Partial Conte…

    Linux 2023年6月7日
    0112
  • Apache Shiro反序列化漏洞(Shiro550)

    1.漏洞原理: Shiro 是 Java 的一个安全框架,执行身份验证、授权、密码、会话管理 shiro默认使用了CookieRememberMeManager,其处理cookie…

    Linux 2023年6月13日
    070
  • @JsonFormat和@DateTimeFormat的作用

    @DatetimeFormat是将String转换成Date,一般前台给后台传值时用 import org.springframework.format.annotation.Da…

    Linux 2023年6月7日
    096
  • Cisco实验:【DHCP配置】客户端跨网段通过DHCP服务器自动获取动态IP和固定IP地址

    模拟环境:R1为路由器e0/0接口和e0/1接口分别连接两个网段,e0/0连接用户区域,e0/1连接服务器区域;用户区域中SW1为接入层交换机,连接一台PC(R2模拟)和一台打印机…

    Linux 2023年6月8日
    0185
  • uniapp php 微信app支付

    php;gutter:true;//微信支付wxPay(){ uni.getProvider({ service: ‘payment’, success: res=>{ if…

    Linux 2023年6月7日
    074
  • 实验1:SDN拓扑实践

    实验1:SDN拓扑实践 基础要求 a) mininet运行结果图 b)2的执行结果截图 2.a)3台交换机,每个交换机连接1台主机,3台交换机连接成一条线。 2.b)3台主机,每个…

    Linux 2023年6月7日
    099
  • 实用!这17个运维技巧,收藏起来随时备用~

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月7日
    0105
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球