目录
Ubuntu 64位ARM Server 22.04.3安装JDK
Ubuntu 64位ARM Server 22.04.3安装MySQL
VI的使用
1、vi的基本概念
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
1) 命令行模式command mode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
2) 插入模式(Insert mode)
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
3) 底行模式(last line mode)
将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。
2、vi的基本操作
a) 进入vi
在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:
$ vi myfile
不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!
b) 切换至插入模式(Insert mode)编辑文件
在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。
c) Insert 的切换
您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。
d) 退出vi及保存文件
在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:
: w filename (输入 「w filename」将文章以指定的文件名filename保存)
: wq (输入「wq」,存盘并退出vi)
: q! (输入q!, 不存盘强制退出vi)
vim查找字符串
一,全匹配:
1,从上往下查找,比如“string” : /string
2,从下往上查找,比如“string” : ?string
二,模糊匹配(正则表达式)
1,. :通配1个字符 ,如 匹配 server, 可以用 /se...r
2,* :通配多个字符,如 匹配 privilege,可以用 p*ge
三,快速查找
1, Shift + * :让光标停留在想要查找的单词的任意一个字母上面, 然后输入 Shift + * ,即可快速选中该单词,并且通过 n 或 N 进行上一个或下一个的匹配。
2,yw :让光标停留在单词的第一个字母上, 然后输入yw拷贝该单词, 然后输入 / (Ctrl + R) 0 (即 /”0),回车, 就查找到了第一个匹配的单词, 并且通过 n 或 N 进行上一个或下一个的匹配。
fork函数
fork是类Unix操作系统上创建进程的主要方法。fork用于创建子进程(等同于当前进程的副本)。
exec函数
exec函数的作用就是:装载一个新的程序(可执行映像)覆盖当前进程内存空间中的映像,从而执行不同的任务。exec系列函数在执行时会直接替换掉当前进程的地址空间。
Copy on Write(写时拷贝)
在linux程序中,fork()会产生一个和父进程完全相同的子进程,但子进程在此后多会exec系统调用,出于效率考虑,linux中引入了“写时复制”技术,也就是只有进程空间的各段的内容要发生变化时,才将父进程的内容复制一份给子进程。
现在有一个父进程P1,这是一个主体,那么它是有灵魂也是有身体的。现在在其虚拟地址空间(有相应的数据结构表示)上有:正文段,数据段,堆,栈这四个部分,相应地,内核要为这四个部分分配给自的物理块。即正文段块、数据段块、堆块、栈块。至于如何分配,这是内核去做的事,在此不详述。
写时复制技术:内核只为新生成的子进程创建虚拟空间结构,它们复制于父进程的虚拟空间结构,但是不为这些段分配物理内存,它们共享父进程的物理空间,当父子进程中有更改相应的段的行为发生时,再为子进程相应的段分配物理空间。
make -j和make -j8
make -j 选项表示并行编译。
make -j8,让make最多允许8个编译命令同时执行。
Fedora挂载exFAT U盘
设置RPM Fusion Repository
sudo dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
安裝 exfat-utils 及 fuse-exfat
sudo dnf install exfat-utils fuse-exfat
插U盘,lsblk可以查看U盘是否被自动挂载
4如果没有自动挂载,则手动挂载
去挂载的位置查看文件
Ubuntu 64位ARM Server 22.04.3安装JDK
首先去Oracle官网下载JDK,没有账号的注册一下就可以。
注意要下载64位ARM版本。
把压缩包放到合适的位置,然后解压下载的JDK压缩包。
下面是一段示例代码,根据自己的情况修改。
sudo tar -xvf jdk-8u371-fcs-bin-b11-linux-aarch64-17_mar_2023.tar
设置环境变量
vim ~/.bashrc
在配置文件末尾加入
export JAVA_HOME=/root/jdk/jdk1.8.0_371
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
jdk1.8.0_371根据自己下载的实际版本修改。
保存配置。
使配置生效
source ~/.bashrc
测试
java -version
Ubuntu 64位ARM Server 22.04.3安装MySQL
如果之前装过,该删的删干净,然后安装
sudo apt-get install mysql-server
启动服务
sudo service mysql start
第一次登录设置个密码
sudo mysql -uroot -p