Java学习---Linux总结

Linux总结

1.学习Linux的原因
学习Linux/Unix的原因是它们适合作为服务器,它们不是针对一个人的,是多用户的。

2.操作系统OS
OS主要包括:
内核 kernel: 通常将一些与硬件紧密相关的模块、各种常用设备的驱动程序以及运行频率较高的模块,都安排在紧密程度较高的软件层次中,将它们常驻内存,即内核。驱动程序属于内核的一部分,是内核的扩展组件,用来帮助内核实现硬件的连接和操控,不包含驱动的内核也叫内核。内核通过提供统一的驱动操作接口供用户层使用,驱动就是在这层统一的接口下实现硬件的操控的中间层。内核可以管理虚拟内存(Linux叫交换空间)。 虚拟内存:匀出一部分硬盘空间来充当内存使用,在需要时进行数据交换。

shell:相当于一个用户与内核交互的接口。例,DOS
DOS:Windows的黑框控制台(cmd)== shift+鼠标右键会出现在此处打开PowerShell窗口的提示== DOS==Windows+r+cmd

文件系统:
①Windows:
绝对路径:从盘符开始的路径
相对路径:从当前路径开始的路径。其中 .表示当前路径,…表示上一级路径

②Linux:
无文件夹的概念,只有目录的概念,无盘符的概念,最顶层目录为/(根目录),各级目录:
opt:第三方应用程序文件的常用存放地
etc:系统配置文件,作用相当于windows的注册表。注意,其中有一个/etc/shadow里面保存着用户的登录密码,/etc/passwd里面保存着用户的信息
dev:就是device的意思,代表计算机的所有硬件设备
usr:用户级别的文件,包含许多系统管理命令和实用程序,其中比较重要的:
    /usr/bin ;应用程序的可执行文件部分,相当于windows的*.exe文件
    /usr/lib;应用程序的共享动态连接库部分,都是一些*.so的文件,linux下各个应用程序的库文件都是可共享的。所以都存放在一个文件夹中
    /usr/share;存放的是应用程序需要的字体、图片、文档等资源文件
    /usr/src; linux的源代码存放处
    /usr/games;游戏软件的存放区域
    /usr/include;Linux下开发和编译应用程序需要的头文件
kernel:内核文件
var:日志文件
home:存放用户家的目录

绝对路径:以/开头
相对路径:从当前路径开始的路径。其中,.表示当前路径,…表示上一级路径
Windows与Linux路径的区别:前者为 \ 后者为 /

3.用户
Ubuntu在刚开始使用时可以设置多个普通用户,但是只能设置一个管理员root。 设置root的密码:sudo passwd root
用su来切换到root用户,此时需要密码,再用su+用户名直接切换到普通用户,此时不需要密码

ctrl+alt+f2-f6:进入没有图形化界面的命令行
ctrl+alt+f7:返回图形化界面

登入:
   图形化界面
   非图像化界面的命令行
登出:
   exit
   sudo shutdown -h now
   sudo poweroff

sudo: 让当前用户暂时以管理员的身份root来执行后面的命令

4.Linux常见的命令
bash具有命令自动补全功能,当用户输入了命令、文件名的一部分时,按键就可将剩余部分补全
语法:
    Command [option(s)]选项,前面有- [argument(s)]参数
    命令行的每一部分之间必须有空格
    单行命令不能超过256个字符
    区分大小写

notePad:Windows下新建记事本的命令
clear:终端清屏,并没有真正清除前面的命令 ==Windows(cls)
pwd:当前目录的绝对路径展示
cd:修改目录 ~=家目录的绝对路径
ls:展示文件的目录列表,后面可以跟多个路径,会展示多个路径的目录列表 ==Windows(dir)
  常用选项:
    -a 显示隐藏文件(以.开头的文件)
    -R 递归显示所有文件的信息,包括子目录里的文件信息,两个选项可以连在一起使用,例-aR,还可以加参数如路径
    -l 以长格式显示文件的详细信息。输出的信息分成多列,依次是文件类型与权限、链接号、文件所有者、所属组、文件大小、建立或最近修改的时间、文件名
    文件类型为第一个字符:
        d:目录
        -:普通文件
        c:字符设备文件
        b:块设备文件
        l:链接文件
        s:socket文件
        p:管道文件
     权限:第一个字符后的9个字符,前三个字符代表拥有者的权限,中间三个字符代表同一组用户的权限,最后三个字符代表其他人的权限 r:读权限 w:写权限 x:可执行权限,可以搜索该目录 -:没有权限
u:拥有者
g:同组人
o:其他人
a:所有人
chmod:修改用户的权限,例为拥有者加上写权限,同组人减去写权限 chmod u+w,g-w 文件名
权限代表的数字:r 代表读,w 代表写,x 代表执行:
如果可读,权限是二进制的100,十进制是4;
如果可写,权限是二进制的010,十进制是2;
如果可运行,权限是二进制的001,十进制是1;
上面的例子可以写成 chmod 754 文件名
链接号: 软链接=Windows快捷方式
-F 目录文件 /
可执行文件 *
文本文件 (无任何标识)
file 文件名(可以是多个文件):查看文件类型
-t按时间进行排序

touch:

  • touch 文件名(可以是多个文件)
  • 不存在:创建文件
  • 存在:修改最后一次的访问时间

mkdir:==Windows(md)

  • 首先要有创建目录的权限
  • mkdir 目录名(绝对路径/相对路径,可以是多个目录名)
  • 当父目录不存在时,子目录不能创建,此时可以使用选项-p

cp:

  • cp 原文件 目标文件
    当目标文件不存在时,会直接创建目标文件
    当目标文件不是空时,会覆盖目标文件的内容,可以用选项-i进行覆盖前询问,y是,n否
  • cp 原文件(s) 目标目录
  • cp -r 原目录(s) 目标目录
    目录之间进行复制必须要有选项-r
    当目标目录不存在时,会直接创建目标目录
    当目标目录存在与原目录同名时,可以使用-i进行覆盖前询问,y是,n否

mv:

  • mv 原文件 目标文件
    当目标文件不存在时,会直接创建目标文件
    选项-i进行覆盖前询问,y是,n否
  • mv 原文件(s)/原目录(s) 目标目录
    当目标目录存在与原文件同名文件时,可以使用-i进行覆盖前询问,y是,n否

rm/rmdir:==Windows(rd 目录) ==Windows(del 文件/目录)

  • rm [-i] 文件名(s)    -i:删除前询问
  • rm -r[i] 目录名(s)
  • rmdir 目录名(s)  目录必须为空

man:
man 命令名(例,ls)
提供帮助
b:返回当前屏幕第一行
f:返回当前屏幕最后一行
q:退出man命令
/string:以字符串格式搜索信息
n:下一个要搜索的字符串信息

元字符:

  • ‘>’ : 将页面显示的结果重定向到文件处,不添加,只覆盖
  • '>> ': 可以添加 cal 2020 >> a.txt
  • |:管道,前面命令的结果作为后面命令的参数
  • cat:展示文本文件的内容,常与重定向连用
  • /dev/null:黑洞,可以使用黑洞和重定向清空文件内容:cat /dev/null > 文件名
  • more:功能与cat类似,但它提供分页阅读的功能
    more 文件名(s) 常用选项:b,f,q,/string,n,h(展示一个帮助菜单)
  • *:代表0-任意个任意字符
  • ?:代表任意单个字符
  • ;:多个命令同时执行
  • date:日期
  • cal:当前月份日历,也可以指定月份和年份

vi:
命令行模式进入输入行模式:i,a,o
命令行模式进入底行模式:/,:,?
输入行/底行模式进入命令行模式:ESC

vi 文件名:打开或创建一个文件
vi : 打开一个新文件,最后命名

i: 在光标当前位置前插入
a: 在光标当前位置后插入
o: 在光标所在行下插入一个空行
I:在光标所在行首插入
A:在光标所在行尾插入
O:在光标所在行上插入一个空行
x: 删除一个符
dw: 删除当前词字
3dw: 删除三个词
dd: 删除当前行
5dd: 删除5行
:5,10d(底行模式): 删除5到10行
r: 替换一个字符
cw: 替换一个单词(直接进入插入模式)
cc: 替换一行(直接进入插入模式)
C: 替换从光标至行尾(直接进入插入模式)
yw: 拷贝词
yy: 拷贝行
p: 当前行下粘贴
:1,2co2 拷贝行1,行2在行2之后
:4,5m6 移动行4,行5在行6之后
:w 保存
:w 新文件名 保存成新文件
:wq 保存并退出
:q! 不保存但退出
~: 改变大小写
J: 把当前行和下一行连起来
u: =ctrl+z
:set nu: 显示行数(不显示为nonu)
:数字: 光标停在指定行
数字G: 光标停在指定行
G:最后一行
gg:=1G,移到第一行
数字n+Enter:光标处往下n行
Ctrl+r:重做上一个动作
.:重复前一个动作
/string: 从当前行往下查找
?string: 从当前行往上查找
n: 查找继续
:r 文件名: 在光标当前位置下一行插入另一个文件
:1, s / 旧 串 / 新 串 / g ( 全 文 ) : 替 换 全 文 ( s/旧串/新串/g(全文): 替换全文( s///g():(=%,两者可替换)

解压缩:
tar -zxvf xx.tar.gz -C dir 指定目录
tar -zxvf xx.tar.gz ./ 当前目录

配环境/配初始化文件:
echo $变量名 =变量值

提示符PS1
环境变量PATH:
PATH=$PATH:…

初始化文件(Bourne-Again):
系统:/etc/profile
用户:HOME(用户的家目录)/.bashrc

source:
source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。
source filename or . filename

find:
find 查找的路径 -选项 参数
-name:按照文件名查找
-iname:忽略名字的大小写
-atime -n +n:按照文件更改时间查找。-n指n天内;+n指n天外
-type:查找某一类文件 f:一般文件
-size: 查找指定大小的文件
-user: 按照文件所有者查找文件

head:
head 命令可用于查看文件的开头部分的内容,有一个常用的选项 -n 用于显示行数,默认为 10,即显示 10 行的内容。n是数字。

tail:
tail -n(n为数字) 文件名
显示文件的尾部n行内容

你可能感兴趣的:(CoreJava,linux,java,shell)