sudo apt install openssh-server(Ubunitu默认没有开启ssh。
(centos默认开启,ssh端口默认为22)
cmd连接ssh:ssh root@xxx.xxx.xxx.xx
连接ssh后保存的证书会保存在~/.ssh/known.hosts(windows、Linux通用)
镜像地址储存位置:/etc/apt/sources.list(Ubuntu) 镜像地址储存位置:/etc/yum.repos.d/CentOS-base.repo(centOS 7) 镜像地址储存位置:/etc/yum.repos.d/CentOS-Linux-*.repo(centOS 8)3、基本常用格式:
#普通用户 root@localhost ~$ #超级用户(root) root@localhost ~# #命令的基本格式 dev@dev-VirtualBox:~$[sudo] 命令的名称 [选项] [参数]1、目录操作命令 列出当前目录文件结构:ls
#语法 ls -l 显示当前详细信息(部分系统会精简为ll) -a 显示隐藏文件更改:cd
#语法 cd 目录路径 #路径分为相对路径和绝对路径 #真正的绝对路径只有一种:/xxx/xxx创建:mkdir
#语法
mkdir 目录路径
#mkdir -p 表示递归创建目录
#语法
mkdir -p d/e g/f
#完整mkdir参数
用法:mkdir [选项]... 目录...
若指定<目录>不存在则创建目录。
必选参数对长短选项同时适用。
-m, --mode=模式 设置权限模式(类似chmod),而不是 a=rwx 减 umask
-p, --parents 需要时创建目标目录的上层目录,但即使这些目录已存在
也不当作错误处理
-v, --verbose 每次创建新目录都显示信息
-Z 设置每个创建的目录的 SELinux 安全上下文为默认类型
--context[=CTX] 类似 -Z,或如果指定了 CTX,则将 SELinux 或 SMACK 安全
上下文设置为 CTX 对应的值
--help 显示此帮助信息并退出
--version 显示版本信息并退出
删除:rmdir
#语法
用法:rmdir [选项]... 目录...
删除指定的空目录。
--ignore-fail-on-non-empty
忽略仅由目录非空产生的所有错误
-p, --parents 删除指定目录及其各个上级文件夹,例如“rmdir -p a/b/c'”
与“rmdir a/b/c a/b a'”类似
-v, --verbose 输出每个被处理目录的详情和诊断信息
--help 显示此帮助信息并退出
--version 显示版本信息并退出
非空文件夹不能删除,除非:rmdir -p
2、文件操作命令
改变文件戳:touch
#touch:如果文件不存在则新建文件,存在则修改文件创建时间。 #用法:touch [选项]... 文件... -a 只更改访问时间 -c 如果文件不存在,则不创建任何文件 -d 把文件的时间改为指定的时间 -m 只更改修改时间查看文件的详细信息:stat
#用法:stat [选项]... 文件... -f, --file-system 显示文件系统状态而非文件状态输出文件内容:cat
#用法:cat [选项]... [文件]... -n, --number 对输出的所有行编号 -A, --show-all 等效于 -vET,用于列出所有隐藏符号 -E, --show-ends 在每行结束处显示$ -T, --show-tabs 将跳格字符显示为^I -v, --show-nonprinting 使用^ 和M- 引用,除了LFD和 TAB 之外输出文件指定内容:tail
#追踪日志时使用较多 #用法:tail [选项]... [文件]... -f 追踪文件内容的实时变化 -n 行数 :从头文件开始,显示指定行数 -v : 显示文件名分屏显示文件内容:more
#用法:more [选项] <文件>... -f 计算逻辑行数,而非屏幕行数 -l 屏蔽换页(form feed)后的暂停 -c 不滚动,显示文本并清理行末 -p 不滚动,清除屏幕并显示文本 -s 将多行空行压缩为一行 -u 屏蔽下划线 -<数字> 每屏的行数 +<数字> 从指定行开始显示文件 +/<字符串> 从匹配搜索字符串的位置开始显示文件 #键盘快捷操作: 空格:下一页 b:上一页 回车:向下滚动一行 /字符串:收索指定字符串 q:退出分行操作的方式查看文件内容:less
#与more操作方式类似显示文件开头:head
#用法:head [选项]... [文件]...
-c, --bytes=[-]K 显示每个文件的前 K 字节内容;
如果数字前附加“-”字符,则除了每个文件的
最后 K 字节数据外显示其余全部内容
-n, --lines=[-]K 显示每个文件的前 K 行内容而非前 10 行内容;
如果数字前附加“-”字符,则除了每个文件的
最后 K 行数据外显示其余全部内容
-q, --quiet, --silent 不显示包含给定文件名的文件头
-v, --verbose 总是显示包含给定文件名的文件头
-z, --zero-terminated 以 NUL 字符而非换行符作为行尾分隔符
创建文件(夹)软硬链接:ln
#用法:ln [选项]... [-T] 目标 链接名 # 或:ln [选项]... 目标 # 或:ln [选项]... 目标... 目录 # 或:ln [选项]... -t 目录 目标... -s :建立软链接文件。如果不加-s则建立硬链接文件 -f :强制删除已经存在的目链接并创建3、文件及目录通用 删除文件或目录:rm
#文件和文件夹都可以使用rm来删除 #用法:rm [选项]... [文件]... -f 强制删除 -i 交互删除,删除之间会询问用户 -r 逻辑删除,可以删除目录 -v 详细显示进行的步骤复制文件或目录:cp
#用法:cp [选项]... [-T] 源文件 目标文件 # 或:cp [选项]... 源文件... 目录 # 或:cp [选项]... -t 目录 源文件... -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。 -d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。 -f:覆盖已经存在的目标文件而不给出提示。 -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。 -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。 -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。 -l:不复制文件,只是生成链接文件。剪切文件或目录:mv(可以用来重命名)
#用法:mv [选项]... [-T] 源文件 目标文件
# 或:mv [选项]... 源文件... 目录
# 或:mv [选项]... -t 目录 源文件...
-b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
-i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
-f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
-n: 不要覆盖任何已存在的文件或目录。
-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
4、权限命令
修改文件和文件夹权限命令:chmod
1、命令格式 #用法:chmod [选项]... 模式[,模式]... 文件... -R, --recursive 递归修改文件和目录(大写R) 2、权限模式 用户身份: u 文件所有者 g 文件所有者所在组 o 所有其他用户 a 所有用户 赐予方式: + 为指定的用户类型增加权限 - 去除指定用户类型的权限 = 设置指定用户权限的设置,即将用户类型的所有权限重新设置 权限: r:read 读 w:write 写 x:execute 执行权限 #如:chmod u+x lmls 语义:赐予lmls文件所有者执行权限 更改所有者: 3、数字权限 4 代表‘r’读 2 代表‘w’写 1 代表‘x’执行权限 #如:chmod 755 lmls 语义:赐予lmls文件755权限,这里的755是指: 第一个数字‘7’代表所有者的权限是4+2+1,也就是读、写和执行 第二个数字‘5’代表所属组的权限是4+1,也就是读和执行 第三个数字‘5’代表其他人的权限是4+1,也就是读和执行 一般常用的权限有: 400:所有者拥有读权限,则所属组和其他用户都没有权限 644:所有者拥有读和写,则所属组和其他用户只有读权限 755:所有者拥有读、写和执行,则所属组和其他用户只有读和执行 777:所有者、所属组和其他用户都有读、写和执行全部权限修改文件和目录的所有者和所属组的命令:chown
#用法:chown [选项]... [所有者][:[组]] 文件... -R, --recursive 递归操作文件和目录 #注:需要sudo权限才可以操作 #如:sudo chown langwang a.txt 语义:将a.txt文件的所有者改为langwang #如:sudo chown langwang:langwang a.txt 语义:将a.txt文件的所有者和用户住改为langwang修改文件和目录的所属组:chgrp
#用法:chgrp [选项]... 用户组 文件... #如:chgrp user test 语义:表示把test文件归纳为user所属组中默认权限:umask
#用法:umask [-p] [-S] [模式]
-p 如果省略 MODE 模式,以可重用为输入的格式输入
-S 以符号形式输出,否则以八进制数格式输出
umask默认权限是Linux权限的一种,主要用于让liunx中的新建文件和目录拥有默认权限
5、压缩及解压
打包与解打包:tar
#用法: tar [选项...] [压缩名]... [源文件或目录]... -c 打包 -x 解压 -f 指定压缩包的文件名 -v 显示打包文件过程 -z #如:打包与解打包:zip
LInux中从源代码进行编译二进制程序并安装:
第一步:操作源码
第二步:执行configure
#注意:执行configure时不会在本目录中查找对应的二进制程序命令。所以需要确保命令的路径是正确的 #用法:1、绝对路径 2、直接使用./命令名称
第三步:编译环境
#debian ubuntu sudo apt install build-seesntial #centos sudo yum install "Development Tools"
第四步:编译
gcc helloword.c
第五步:运行
#编译完成后会生成makefile文件 #编译后执行makefile即可6、Vim 文件编辑器
#vim是vi增强的一个版本 #语法 vim 文件名称 -- 文件可以不存在,当保存是不存在则会新建文件并存储内容 #参数: + 启动后跳到文件末尾 +vim的工作模式: 命令模式(默认)启动后跳到第 行 ---实列 vim nginx.conf #打开文件,光标定位到上一定位位置(第一次打开则第一行) vim + nginx.conf #打开文件,光标最后一行 vin +10 nginx.conf #打开文件,光标第十行 vim +/server nginx.con #打开文件并标记对应的server字符
可以使用h,j,k,l或者方向健进行光标的移动,以及查找、复制等操作
输入模式:在命令模式下输入a、o、i或者按insert健进入模式。(如果再按insert健可以再插入模式和替换模式互换)按ESC回到回到命令模式。
数字6:可以快速定位到指定数字行 ---查找:可以按n进行查找下一个,按N查找上一个 /内容:从上往下查找匹配内容 ?内容:从下往上查找匹配内容 dd:删除一整行 yy:复制一整行 p:粘贴编辑模式:
在命令模式下输入冒号:然后输入命令回车即可执行对应的操作。
:数字:可以快速定位到指定数字行 w:保存 q:退出 !:强制(q!进行强制退出)



