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)

大家都在看

  • 【Java8新特性】- 接口中默认方法修饰为普通方法

    Java8新特性 – 接口中默认方法修饰为普通方法 😄生命不息,写作不止🔥 继续踏上学习之路,学之分享笔记👊 总有一天我也能像各位大佬一样🏆 一个有梦有戏的人 @怒放吧…

    Linux 2023年6月6日
    0105
  • 不自由的自由职业

    大家好,我是良许,前码农,现在自由职业者。 有关注我朋友圈的小伙伴都知道,就在上周,我刚刚结束了长达 35 天的「假期」。 此言一出,立刻掀起了评论区留言狂潮,大家纷纷问我,你特么…

    Linux 2023年6月14日
    081
  • RPA工单查询和下载流程机器人

    bash;gutter:true;1、登录业务系统,输入用户名和密码2、进入下载模块3、输入下载查询条件4、进入文件明细单5、下载文件视频地址:https://www.bilibi…

    Linux 2023年6月7日
    0142
  • Spring事务基础入门及AOP陷阱分析

    更新说明: 2021-12-28 6.2.1 章节更新了代理说明图,调整了说明顺序,修复了错误说明 转载请注明出处: https://www.cnblogs.com/qnlcy/p…

    Linux 2023年6月6日
    078
  • shell 配置文件节约空间

    shell 配置文件节约空间 sed 读取一个配置文件的的多个变量 Original: https://www.cnblogs.com/hshy/p/16451927.htmlAu…

    Linux 2023年5月28日
    082
  • 附032.Kubernetes实现蓝绿发布

    蓝绿发布原理 蓝绿发布本质上是希望能优雅无误的迭代应用,以便于使应用平稳提供服务。通常是不停老版本的同时对新版本进行先发布,然后确认无误后进行流量切换,即并行部署。Kubernet…

    Linux 2023年6月13日
    089
  • MIT6.828——Lab1 partB(麻省理工操作系统课程实验)

    Lab1 历时2天,完成了LAB1,完整代码仓库可点击:https://github.com/Elio-yang/MIT6.828 partA 练习 *exercise3 gdb指…

    Linux 2023年5月27日
    0120
  • shell大全定时清空文件内容,定时记录文件大小

    shell大全定时清空文件内容,定时记录文件大小 bash;gutter:true;</p> <h1>!/bin/bash</h1> <h…

    Linux 2023年5月28日
    0122
  • 实验一-密码引擎-加密API实现与测试

    任务详情 1 下载并查找GMT 0018-2012密码设备应用接口规范原始文档进行学习 (5分) 2 实现GMT 0018-2012密码设备应用接口规范的接口函数,至少实现:1)设…

    Linux 2023年6月8日
    082
  • .net core3.1 abp动态菜单和动态权限(动态菜单实现和动态权限添加) (三)

    我们来创建动态菜单吧 首先,先对动态菜单的概念、操作、流程进行约束:1.Host和各个Tenant有自己的自定义菜单2.Host和各个Tenant的权限与自定义菜单相关联2.Ten…

    Linux 2023年6月7日
    093
  • Gitlab 403 forbidden 并发引起IP被封

    问题 在工作中自搭建的Gitlab。但今天打开页面的时候显示的是空白页面,上面还有一次文本Forbidden。 原因 Gitlab使用rack_attack做了并发访问的限制。 解…

    Linux 2023年6月14日
    079
  • supervisord 进程管理利器

    Supervisor概述 ​ supervisor是一个 Client/Server模式的系统,允许用户在类unix操作系统上监视和控制多个进程,或者可以说是多个程序。superv…

    Linux 2023年5月27日
    098
  • python入门基础知识二(字符串的常用操作方法)

    索引从0开始,每个标点也算一位 序列[开始位置:结束位置:步长] 步长可以是负数, 为负时输出结果为倒序。 var.find/rfind(‘chars’, …

    Linux 2023年6月7日
    092
  • linux应急响应具体操作

    第一件事情应该是切断网络,但是有些环境不允许网络断开,就只能跳过这一步。 1、查看历史命令 ​发现Linux 服务器被攻击,要做应急响应,登录主机后的第一件事,就是查看主机的历史命…

    Linux 2023年6月14日
    094
  • Redis集群搭建的三种方式

    一、单节点实例 单节点实例还是比较简单的,平时做个测试,写个小程序如果需要用到缓存的话,启动一个 Redis 还是很轻松的,做为一个 key/value 数据库也是可以胜任的 二、…

    Linux 2023年5月28日
    064
  • Spring事务管理

    事务的特性:一致性、原子性、隔离性、持久性 Spring事务管理相关接口:PlatformTransactionManager(事务管理器)、TransactionDefiniti…

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