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)

大家都在看

  • 【填空题】考研数据结构填空题整理

    数据结构填空题 题源来自《算法与数据结构考研试题精析》、《王道数据结构》在Liang’s Blog所著的文章上补充考点,仅供参考学习 一、概论 数据元素 是数据的基本单…

    Linux 2023年6月13日
    097
  • Shell:Shell基础

    Shell基础 一、shell定义 shell是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。 Shell 是指…

    Linux 2023年5月28日
    071
  • dotnet-cnblogs-tool使用与坑

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

    Linux 2023年6月6日
    068
  • python数据结构与算法(1)—时间复杂度

    一.数据结构基础 1.数据结构概念 就是一组数据在内存中的存储形式,也是对基本数据类型的一次封装 也是数据对象中数据元素之间的关系。 算法与数据结构的区别: 数据结构只是静态的描述…

    Linux 2023年6月6日
    063
  • Tomcat下载安装以及配置方法

    Tomcat环境变量配置方法 注意一定要在java环境配置成功之后再来配置tomcat。我这里仅展现在Windows系统下载的安装方法 Tomcat下载地址如下: https://…

    Linux 2023年6月7日
    080
  • usermod -aG命令

    原文链接:https://www.zhoubotong.site/post/73.html添加用户uos到组groupA里: usermod -a -G groupA uos 例如…

    Linux 2023年6月6日
    0692
  • DQL

    查询语法 select 字段列表 from 表名列表 where 条件列表 group by 分组字段 having 分组后条件 order by 排序字段 limit 分页限定 …

    Linux 2023年6月7日
    058
  • 搭建Nginx七层反向代理

    基于https://www.cnblogs.com/Dfengshuo/p/11911406.html这个基础上,在来补充下七层代理的配置方式。简单理解下四层和七层协议负载的区别吧…

    Linux 2023年6月8日
    0102
  • GT/s和Gbps的关系

    GT/s 和 Gbps 数据传输表示通过数字接口传递的数据量。 当用较多的数据位对原始数据进行编码时,有效数据传输量低于实际传输的数据位数。例如:PCIe串行总线采用10位数据对8…

    Linux 2023年6月7日
    079
  • kubeadm 加入新master 报错

    error execution phase check-etcd: error syncing endpoints with etcd: context deadline exce…

    Linux 2023年6月14日
    0110
  • Python递归遍历目录下所有文件

    递归遍历目录下所有文件 方法一 import os def gci(filepath): #遍历filepath下所有文件,包括子目录 files = os.listdir(fil…

    Linux 2023年6月13日
    092
  • [LINUX] Arch Linux 硬盘拷贝式装系统+新增 home 分区

    前言 1. 实操 1.1 整个磁盘拷贝 1.2 创建 home 分区 1.3 修改 fstab 实现自动挂载 2. 涉及到的知识点 2.1 fstab 2.2 dd 命令 2.3 …

    Linux 2023年5月27日
    0147
  • Windows+VSCode编译在Linux-x86_64环境上运行的程序

    一、简介 本文主要介绍在Windows平台上使用VSCode,从而可以一键编译出运行在Linux-x86_64环境中的程序或库。 二、实现方式 ① 交叉编译 ② WSL(Windo…

    Linux 2023年6月7日
    082
  • Flask聚合函数(基本聚合函数、分组聚合函数、去重聚合函数))

    1.基本聚合函数(sun/count/max/min/avg) 语法 注意:使用db.session.query()括号内必须要写东西,不能空着,不然都不知道从哪张表中查询数据 代…

    Linux 2023年6月8日
    077
  • Ubuntu 16.04 更改系统语言为简体中文 #####避坑指南

    按照我的步骤一步一步走,就不会有问题了。 [En] Follow my steps step by step, and there will be no problem. 这里我想…

    Linux 2023年5月27日
    093
  • CentOS 7替换默认软件源

    安装CentOS 7后,默认源在国外,可以替换为国内的源以提升访问速度 参考https://mirrors.ustc.edu.cn/help/centos.html sudo vi…

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