连接
# 开启远程链接openssh-server
sudo apt-get install openssh-server
# 重启ssh
sudo service ssh restart
linux基本命令
# 清屏
clear
# 进入文件夹
cd /home/chen
# 显示当前路径
pwd
# 回到上级目录
cd ../
# 回到用户家目录
cd ~
# 回到上次打开的目录
cd -
# 显示文件
ls -a(全部文件) -h(人类可读方式) -t(修改时间排序) -r(逆序显示) -i(显示i节点)
# 复制文件
cp -r(可选,表示递归复制,多级文件夹使用) 源文件 复制后的文件名
# 移动文件/重命名文件
mv 源文件 移动后的目录/重命名的文件名
# 删除文件(需要小心,不可恢复!!!)
rm 文件名
# 创建目录
mkdir 目录名
# 创建多级目录
mkdir -p folder1/folder2/folder3
# 查看目录结构
du/tree(需要安装)
# 删除目录(目录为空时使用)
rmdir 文件名
# 删除目录(目录不为空时使用)
rm -r 文件名
创建文件
# 所有命令都是文件不存在的情况下创建
# 创建但是不打开
touch 文件名
# 文件不存在:创建并写入内容,文件存在:覆盖文件内容
echo "hello" > 文件名
# 文件内追加内容
echo "hello" >> 文件名
# 创建并打开
vim 文件名
文件权限
# 添加可执行权限(可读可写可执行可以合并使用)
chmod +x 文件名/chmod +xr 文件名
# 删除可执行权限
chmod -x 文件名
# 给特定角色添加权限,u:所有者,g:同组,0:其他用户
chmod u+x 文件名/chmod ug+x 文件名
# 修改权限
chmod 777 文件名(将文件权限修改为777)
查看文件
# cat从第一行开始显示文件内容
# tac从最后一行显示文件内容,是cat的倒写
# nl显示文件内容的时候同时输出行号
# more按页显示文件内容(空格翻页,enter向下看一行,:f显示行号)
# less与more类似,但是比,more更好,可以向前翻页
# (空格翻页,上下键代表翻动页面,按q退出,查询跟vim一样,使用/ or ?)
# head -n m 文件名(只看前m行内容)
# tail -n m 文件名(只看后m行内容)
vim使用
# 按下^跳转到当前行首,按下$跳转到当前行尾(可代替命令里的开始结束行号使用)
# 按下yy复制一行内容,按下p粘贴内容,按一次p粘贴一次
# 按下dd删除一行内容(可以按p复制刚才删除的内容到光标位置的下一行,相当于剪切)
# 输入2yy复制当前光标开始往下的两行内容,输入3p把复制的内容粘贴3次
# / 进入搜索模式, n向下搜索, N向上搜索
# ? 进入搜索模式, N向下搜索, n向上搜索
# / or ?查找内容后面加\c忽略大小写
# :m,ns/查找内容/替换内容/g
# 从m行到n行全局替换,只有一行可以忽略m和n,不加g只会替换每一行第一个匹配到的内容
# dd 删除光标所在行
# yy 复制当前行
# p 粘贴复制的内容
# u 撤销修改
# ctrl + r 反向撤销修改
# gg 跳到首行
# G 跳到行尾
# nG 跳到第n行(100G跳转到第100行,或者:100回车,一样的效果)
# dG 当前行开始,向下全部删除
# dgg 当前行开始,向上全部删除
# d$ 当前光标开始,删除到本行结尾
# d0 当前光标开始,删除到本行的开头
# :set nu/:set number 显示行号
# :set nonu/:set nonumber 取消显示行号
# :set paste 设置粘贴模式
# Ctrl + f (forward) 向前翻页
# Ctrl + b (backward) 向后翻页
# Ctrl + u (up) 向前翻半页
# Ctrl + d (down) 向后翻半页
# +键:光标移动到非空格符的下一行
# -键:光标移动到非空格符的上一行
# 数字 + 空格:快捷切换光标
# H:光标移动到当前屏幕最上方一行的第一个字符
# M:光标移动到当前屏幕最中间一行的第一个字符
# L:光标移动到当前屏幕最下方一行的第一个字符
# :wq 保存离开
# ZZ 文件未变动,直接离开,文件变动,保存离开
# :w [filename] 将编辑的数据保存为另一个档案(类似于另存为)
# :r [filename] 在本文件中读入另一文件数据,将filename内容加到游标所在行后面
# :n1,n2 w [filename] 将n1到n2这部分内容保存为filename这个档案
# .vimrc文件:保存vi配置信息(设置快捷键,颜色,插件等)
进程
# linux中每一个程序都有一个进程和id号
# 每一个进程都有一个父进程
# 进程两种存在方式:1前台(关闭就结束进程),2后台(一直运行)
# 一般程序前台运行,服务后台运行
# 查看当前系统中正在执行的各种进程的信息
# -a(显示当前终端运行的所有的进程信息)(当前的进程)
# -u(以用户信息显示进程)
# -x(显示后台运行进程的参数)
ps -参数
# linux中|代表管道符
# A|B是A命令的结果作为参数传入B命令
# grep:查找文件中符合条件的字符串
# ps -aux查出所有进程,过滤出含有mysql的进程
ps -aux|grep mysql
# 查看父进程信息(不常用)
ps -ef|grep mysql
# 通过目录树查看父进程,-p(显示父id) -u(显示用户组)
pstree -pu
# 一般情况只需要使用 ps -xx|grep 进程名,过滤进程信息
# 结束进程(杀掉进程),-9强制结束进程
kill -9 进程id
ln软链接
# 在系统中创建软链接,可以将文件或者文件夹链接到其他位置, 类似快捷方式
# 可以指向文件或目录
ln -s 参数1 参数2
-s 创建软连接
参数1 被链接的文件或者文件夹
参数2 要链接去的目的地
ln -s /etc/yum.conf ~/yum.conf
ln硬链接
# 在系统中创建硬链接,硬链接和原文件共享同相同i节点,相当于同一个文件的两个名字
# i节点:存储文件的元数据信息(文件类型,权限,所有者,大小,时间戳,数据块指针)
# 只能指向文件
ln 参数1 参数2
# 参数1 被链接的文件或者文件夹
# 参数2 要链接去的目的地
ln /etc/yum.conf ~/yum.conf
账号(root账号操作)
# linux一切皆文件,添加用户就是往文件写入用户信息
# 添加用户 -m 自动创建这个用户的主目录 /home/chen
# 添加用户 -G 设置用户组
useradd -选项 username
# 删除用户 加-r清理用户文件(默认不清理)
userdel -r username
# 修改用户
usermod -r username
# root用户修改普通用户密码(普通用户修改自己的密码)
passwd username(passwd)
# 锁定账号,锁定之后账号就不能登录了
passwd -l username
# 清空账号密码,清空之后账号也不能登录
passwd -d username
# 切换用户
su username
# 普通用户切换到root
sudo su
# 拓展:
# /etc/passwd 用户信息文件
# /etc/shadow 用户密码文件
# /etc/group 用户组信息文件
用户组(root账号操作)
# 创建用户组,完成后可以得到一个id,这个id可以指定,
# 使用groupadd -g m groupname指定组id
# 如果不指定,组id会自增
groupadd groupname
# 删除用户组
groupdel groupname
# 修改用户组权限,信息,名字
groupmod -选项 groupname
# 切换用户组
group
磁盘
# 列出文件系统整体的磁盘使用量
df -h(以人类可读方式展示)
# 检查磁盘空间使用量
du
# 挂载磁盘(将外部设备/dev/chen挂载到mnt目录下面实现访问)
mount /dev/chen /mnt/chen
# 卸载
unmount -f(强制卸载) /mnt/chen